我正在寻找一个正则表达式来替换像“w o r d”这样的单词, “o v e r f low”分别为“word”和“overflow”,遍及输入字符串(包括开头和结尾)。
我正在使用PHP& preg_replace函数。并且需要在按空格分割字符串并进一步过滤之前检测这些字。当时的任何组合都没有给出应有的结果。
提前致谢!
答案 0 :(得分:0)
这个很难,因为:这是一个什么词?什么是一个词的一部分?
in cr e di ble
和it is a dog
之间有何不同?
要使用正则表达式,您需要设置规则,例如:
如果您无法确定这些规则,那么您就无法编写可以解决问题的正则表达式。将单词与字典进行比较以确定它们是否有效应证明更有用。
答案 1 :(得分:0)
$ string = "w o r d", "o v e r f low"
$ echo 'word w o r d' | sed '/\([^ ][^ ]\)[ ]/s::\1\n:g ' | sed '/[ ]\([^ ][^ ]\)/s::\n\1:g' | sed ':r /\([^ ]\)[ ]/s::\1: ; tr' | sed 'H; ${x;/\n/s:: :g;sc[ ]cc;p};d'