正则表达式匹配没有空格的单词

时间:2012-05-08 04:34:21

标签: php

我正在尝试使用preg_match来过滤不需要的垃圾邮件查询,我想匹配preg_match中列出的任何单词,并在其后面没有空格时对其进行过滤。

所以例如,如果我在preg_match中有单词balloon,那么我想过滤任何类似“balloon1”或“balloond”或“balloonedfbdg”等的东西,并允许任何带有空格的东西,如“气球大”,“气球小“等等。

我有很多来自谷歌的查询,只需要一个单词并添加一大堆垃圾,我想过滤掉它。这只是几句话,但对我来说这很烦人,并且找到答案来解决这个问题。

我已经使用preg_match进行了一些使用正则表达式的垃圾邮件查询,但我不知道如何匹配没有间隔的内容并允许有空格的东西。

感谢任何帮助,谢谢。

1 个答案:

答案 0 :(得分:1)

你的表达:/(balloon|otherwordone|othertwo)[^\s]/i

如果列出的单词后跟空格(\ s),则匹配列出的单词

编辑:使用\B(不是单词边界):

/(balloon|otherwordone|othertwo)\B/i

这可以防止常见句子符号触发正则表达式(如点,逗号)。