将句子拆分为单词

2023-12-09

例如我有这样的句子:

$text = "word, word w.d. word!..";

我需要这样的数组

Array
(
    [0] => word
    [1] => word
    [2] => w.d
    [3] => word".
)

我对正则表达式很陌生..

这是我尝试过的:

function divide_a_sentence_into_words($text){ 
    return preg_split('/(?<=[\s])(?<!f\s)\s+/ix', $text, -1, PREG_SPLIT_NO_EMPTY); 
}

this

$text = "word word, w.d. word!..";
$split = preg_split("/[^\w]*([\s]+[^\w]*|$)/", $text, -1, PREG_SPLIT_NO_EMPTY);
print_r($split);

有效,但我有第二个问题我想在正则表达式中写入列表 “w.t”是特殊情况..例如这个词是我的列表“w.d”,“mr.”,“dr.”

如果我要接受文本:

$text = "单词,单词博士w.d.单词!...";

我需要数组:

Array (
  [0] => word
  [1] => dr.
  [2] => word
  [3] => w.d
  [4] => word 
)

抱歉英语不好...


Using preg_split正则表达式为/[^\w]*([\s]+[^\w]*|$)/应该可以正常工作:

<?php
    $text = "word word w.d. word!..";
    $split = preg_split("/[^\w]*([\s]+[^\w]*|$)/", $text, -1, PREG_SPLIT_NO_EMPTY);
    print_r($split);
?>

DEMO

Output:

Array
(
    [0] => word
    [1] => word
    [2] => w.d
    [3] => word
)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将句子拆分为单词 的相关文章

随机推荐

  • 使用 footer_callback 对数据表页脚中的 1+ 列求和?

    鉴于这种页脚回调数据表示例 这是我的FIDDLE 这基本上是 1 列每列总数的总和 谁能告诉我如何为超过 1 列执行此操作 我想我可能需要添加更多th我想要求和的列的标签 tfoot tr th style text align right
  • 如何在map和unordered_map之间进行选择?

    假设我想以字符串作为键来映射数据 我应该选择什么容器 map or unordered map unordered map占用更多内存 所以我们假设内存不是问题 问题是速度 unordered map通常应给出 O 1 的平均复杂度 最坏情
  • 玩游戏后重置阵列?

    我用 xcode 在 iOS 中做了一个测验 我现在拥有的是一个从数组中生成 20 个随机答案的测验 当按下按钮检查答案是否正确时 它控制标签的文本 答案也是随机生成的 我确保没有多个答案具有相同的文本 我的问题是 当提出问题时 我将数组中
  • 在 Javascript 中按对象 ID 分组

    我有一系列 ID 和组织 如下所示 var ids 1 2 3 var orgs name Org 1 id 1 name Org 2 id 2 name Org 3 id 2 我想循环这些以输出如下内容 1 name Org 1 id 1
  • 使用 Azure DevOps Services REST API 添加描述的超链接

    我的实际代码将其粘贴为纯文本 而不是超链接 发布到 https dev azure com 用户 项目 apis wit workitems type api version 5 0 preview 3 op add path fields
  • Android - 在 Facebook、Twitter、邮件、ecc 上分享

    我需要开发一个具有分享功能的应用程序 我必须在 Facebook Twitter 电子邮件以及其他服务上分享 我怎样才能做到这一点 网上有图书馆吗 对于 iOS 开发有 ShareKit 但是对于 Android 呢 谢谢 Paresh M
  • 如何使用 ACTION_PACKAGE_FIRST_LAUNCH 意图过滤器来启动应用程序?

    我正在尝试使用意图过滤器 ACTION PACKAGE FIRST LAUNCH 使应用程序在首次启动时执行一些任务 但它没有被广播接收器捕获 我的清单
  • 如何更改操作栏中下拉菜单的背景颜色

    我正在开发一个 Android 应用程序 在设计操作栏时遇到一些问题 我使用的是带有白色图标的深色操作栏 当我单击溢出图标时 会弹出一个下拉菜单 一切都很好 但我需要带有红色文本的下拉菜单的浅色背景 我尝试过编辑主题styles xml但当
  • 获取 IIS-7 及以上版本网站的 Id

    我可以通过将 ID 作为参数传递来以编程方式 C 获取 IIS 7 C Windows System32 inetsrv config applicationHost config 中托管的任何网站的物理路径 但是对于iis7来说通过代码查
  • #if __IPHONE_4_0 在 iPad 上运行吗?

    此检查在 iPad 和 iPhone 上都有效吗 我想我只是对在 iPad 上使用 iPhone 一词感到困惑 我还需要检查 iPad OS 版本吗 或者宏是否指的是一般 iOS 版本 if IPHONE 4 0 Do stuff elif
  • dplyr 中的 mutate_each / summarise_each:如何选择某些列并为变异列提供新名称?

    我有点困惑dplyr verb mutate each 使用基本的方法非常简单mutate将一列数据转换为 z 分数 并在 data frame 中创建一个新列 此处名称为z score data newDF lt DF gt select
  • 如何在机器人框架中的小黄瓜式测试中指定句子中间的参数?

    使用 Robot Framework 我打算使用 Gherkin 风格的测试 因为它是 BDD ATDD 的通用语言 我可以指定这样的测试 Test Cases New alert Given there were no alerts so
  • C# 中标准 I/O 的非阻塞读取

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 我想要一个来自控制台的非阻塞读取功能 我如何用 C 编写它 理查德 达顿有一个解
  • Android 将图像拖放到屏幕上?

    我正在帮助项目用户将图像从一个位置移动到屏幕上的另一个位置 我已经编写了一个示例代码来移动图像 但这里的问题是 如果我移动一个图像 相邻图像也会开始移动 这是示例代码 任何一个想法 主程序 java public class MainAct
  • 如何将 h5 文件转换为 tflite 文件?

    我正在尝试在 Android 上运行车牌检测 所以首先我找到这个教程 https medium com quangnhatnguyenle detect and recognize vehicles license plate with m
  • 编写分类栅格及其符号系统

    我已经对很多栅格进行了分类 我想用我定义的符号系统来编写它们 这是我正在处理的栅格类型 library raster library rasterVis r lt raster nrow 10 ncol 10 r 1 r 51 100 3
  • 如何仅打印(调整后的)回归模型的 R 平方?

    我是 R 初学者 我有一个关于空气污染的数据集 这些列是站点 测量浓度和可能影响浓度的 80 个变量 v1 v80 我想用我自己的代码创建一个基于 R squared adj 的前向逐步回归模型 所以我不想使用诸如 step 或 regsu
  • 将 char 指针从 C# 传递到 C++ [重复]

    这个问题在这里已经有答案了 可能的重复 将 char 指针从 C 传递到 C 函数 我有这样的问题 我有一个具有以下签名的 C 函数 int myfunction char Buffer int rotation 缓冲区参数必须用空格字符
  • Angular2 异常:尝试检测脱水检测器上的变化

    我遇到这个错误EXCEPTION Attempt to detect changes on a dehydrated detector 并在阅读了一些在线页面后 我不太清楚如何解决它或者因为它是 https github com angul
  • 将句子拆分为单词

    例如我有这样的句子 text word word w d word 我需要这样的数组 Array 0 gt word 1 gt word 2 gt w d 3 gt word 我对正则表达式很陌生 这是我尝试过的 function divi