这似乎已被问过很多次,但我找不到任何答案来解决我的具体请求。正则表达式只匹配子字符串A时子字符串B未找到
有输入字符串,如:
1. The road is closed.
2. Closed road ahead.
3. There is a closed lane.
4. The lane is closed.
什么正则表达式字closed
只有当字lane
不是输入字符串的一部分相匹配?这应该是尽可能通用在
- 这个词
lane
之前或字closed
后存在方面, - 该单词的任何数量和类型可以
lane
和closed
之间的立场,这不仅a
或如在上面的例子中使用的那样。
我会期望在输入串1和2是匹配closed
,但不是在3和4(因为其中一方包含禁止词素lane
)。
我试图做到这一点与消极lookaheads和lookbehinds,但这仍然匹配在所有四个输入字符串中发生closed
。
(?<!lane)(?!lane)(closed)
正则表达式的味道是Python 3.4。
要测试reghex尝试http://pythex.org/或http://www.pythonregex.com/ – 2014-12-04 13:50:49