我正在尝试自己学习正则表达式,因此这种愚蠢的活动。
我正在尝试用“足球”中的任何一个词来取回,但是从那里排除“足球” - 所以我可以得到任何其他东西 - 足球运动员,足球运动员,足球。只是不是“足球”。
我发现\bfootball(?!s)\b
摆脱了足球运动员和足球。我怎么只排除“足球”?
答案 0 :(得分:2)
你必须在断言中移动单词边界:
/\bfootball(?!s\b)/
这比删除单词边界更正确。
当您完全删除边界时,您会错过s
之后的单词以及之后的单词:
例如footballsa
。
答案 1 :(得分:1)
\bfootball(?!s)\b
排除“足球运动员”,因为你正在寻找一个单词边界,然后是“足球”,然后不是S,然后是另一个单词边界(不允许你在“足球”之后找到任何东西) )。摆脱结束词边界(换句话说,改为使用\bfootball(?!s\b)
)。