如果特定单词是唯一输入的单词(忽略whitesapce),我正在寻找一个不通过的正则表达式。例如:
接受:
"Word hello"
"hello Word"
"Wordy"
编辑:也接受“你好你好”
拒绝:
"Word"
" Word"
"Word "
" Word"
编辑:我没有说清楚我的问题。抱歉。我的意思是当字“字”是字符串中唯一的东西(忽略空格)时,我只希望它拒绝字符串。
答案 0 :(得分:0)
如果Word
需要成为匹配的一部分,则使用正则表达式
^(?!\s*Word\s*$)\s*\K.*Word.*?(?=\s*$)
如果没有,请使用
^(?!\s*Word\s*$)\s*\K.*\S
答案 1 :(得分:0)
实际上不确定这是否有效,但它看起来很适合你的例子:
^(?!\s*Word\s*$).*
答案 2 :(得分:-1)
也许不是最优雅的例子,但似乎通过了你的标准:
\S+.*Word.*|.*Word.*\S+
匹配整条线,这似乎是意图:
^.*\S+.*Word.*|.*Word.*\S+.*$
答案 3 :(得分:-1)
^\s*\w*Word\w*\s*$
如果您匹配字符串的开头和结尾,那么就可以完成这项工作。
否则,你需要做一些时髦的事情:
^(?<!\w)(\s*\w*Word\w*\s*)+(?!\w)$
如果您只需要匹配一次“Word”,那么:
^(?<!\w)(\s*\w*Word\w*\s*){1}(?!\w)$
<强>匹配强>
<强>非匹配:强>