正则表达式(preg_replace)匹配单词,除非它开始一个句子/段落

时间:2014-12-17 22:20:26

标签: php regex

我目前正在摸索着找出一种匹配单词的方法,除非它开始一个句子或段落。

我有大量的文字,我需要小写一个单词的开头,除非它开始一个句子

到目前为止我已经

preg_replace('/Word\b/','word',$text);

有人可以帮助解决一个句子的排除模式

感谢

1 个答案:

答案 0 :(得分:1)

这实际上取决于你如何定义句子。

preg_replace('/([^.?!]\s*)Word\b/','$1word',$text);

这可以确保单词不会立即跟随一些标点符号。这也意味着它不能匹配段落的开头,因为它需要匹配一些非标点符号。