php - 由各种分隔符分割,同时保留分隔符?

标签 php regex split cjk

我想分割文本
过了公元年?因为无论你如何选择。简体字危及了对古代文学的研究输入!

使用这三个(或更多)?!。字符作为分隔符。 我当然可以用
来做到这一点 $lines = preg_split('/[。,!,?]/u',$body);

但是我不想让结果行保留其结束分隔符。另外一个句子可能会像这样啊。。。什么!??!!!!

最佳答案

试试这个:

$lines = preg_split('/(?<=[。!?])(?![。!?])/u',$body);

它在前面有一个分隔符但后面没有分隔符的位置处进行分割。它不消耗分隔符,如果有两个或多个连续分隔符,则仅在最后一个分隔符之后匹配。

关于php - 由各种分隔符分割,同时保留分隔符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3437982/

相关文章:

java - 按指定模式在java中拆分字符串

javascript - MySQL/PHP/jQuery - 查询问题

php - 在 SugarCRM 7 中更改子面板顺序

php - 是否可以在打开语句时直接通过链接运行 mysqli 查询?

python - 使用正则表达式python检测句子中的表情符号

javascript - 是否存在 "[^xy]"不等于 "(?!x|y)."的情况?

c# - C#中如何取回子字符串的值

php - INT 的 GET 参数不想更新

python通过http将正则表达式传递给mongo

java - Java 中的 split() 方法从哪里开始将正则表达式与字符串匹配?