如何使用RegExp匹配不包含特定单词的任何事物
例如:匹配任何不包含'aabbcc‘的字符串
bbbaaaassdd // Match this
aabbaabbccaass // Reject this发布于 2013-06-18 23:57:41
你可以使用负向先行:
(?!.*?aabbcc)^.*$现场演示:http://www.rubular.com/r/4Exbf7UdDv
代码:
$str = 'aabbaabbccaass'; //or whatever
if (preg_match('/(?!.*?aabbcc)^.*$/', $str))
echo "accepted\n";
else
echo "rejected\n";发布于 2013-06-18 23:54:56
如果您只是想要这个字符序列,就不要使用正则表达式。使用strpos()。
if (strpos('aabbaabbccaass', 'aabbcc') !== false) {
echo 'Reject this.'
}注意:请务必阅读手册中有关strpos()返回值的警告。
发布于 2013-06-19 00:09:10
尝试这样做,以避免某些字母序列:
^((?!aabbcc).)*$https://stackoverflow.com/questions/17173474
复制相似问题