标签: php regex
我需要观看包含字母'q'的任何字词,但q不能立即跟随'u'。例如,它应该只匹配 'qwe' out of: queen qwe.
'q'
'u'
'qwe' out of: queen qwe.
我正在寻找一个简单的解决方案,我不认为[q]和排除r会很整洁。
答案 0 :(得分:8)
你会使用一些单词边界和一个负向前瞻:
(\b[^ ]*?q(?!u).*?\b)
(?!u)确保u之后没有q。之前的\b[^ ]*?和之后的.*?\b将捕获其余部分。
(?!u)
u
q
\b[^ ]*?
.*?\b
答案 1 :(得分:1)
你可以匹配q,然后“不是你”:
q[^u]