在常用单词删除模式中忽略连字符单词的regexp [英] Regexp to ignore hyphenated words during common word removal pattern
本文介绍了在常用单词删除模式中忽略连字符单词的regexp的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个正则表达式,它可以从字符串($input
)中删除常用词($commonWords
),我想对其进行调整,使其忽略连字符的词,因为这些词有时包含常用词。
return preg_replace('/('.implode('|',$commonWords).')/i','',$input);
谢谢
推荐答案
尝试
return preg_replace('/(?<!-)('.implode('|',$commonWords).')(?!-)/i','',$input);
这会将negative lookaround个表达式添加到正则表达式的开头和结尾,以便只有在匹配之前或之后没有破折号时才允许匹配。
这篇关于在常用单词删除模式中忽略连字符单词的regexp的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文