我有一个字符串列表,如果前面没有"and“,我想匹配一个关键字。但是,如果"and“前面是另一个词,我想包括关键字。考虑到“和”在所有字符串中的位置并不相同。
在下面的示例中,我希望匹配具有"book“一词的字符串,只有在"book”一词不是在“和”和“除非”和“the”前面加上"tall“(我列表中的第一项和第三项)的情况下。我的企图是利用
^((?!((?<!tall)\band\b)).)*book
但这是行不通的。我不确定我是否能在消极的展望中包含一个负面的视角
4.带耳机的电脑
发布于 2018-07-20 05:19:32
我想用正反两种交替的方式来表达这一点:
((?<!\band )|(?<=\btall and ))book
这里的逻辑是,如果以下两个条件之一为真,则匹配单词book
:
book
之前根本没有and
这个词。book
前面是and
,而后者又是tall
前面我没有费心地包含任何Python代码,但从我从您的问题中收集到的信息来看,肉和土豆是在计算正则表达式,而不是Python代码。
发布于 2018-07-23 13:14:36
我发现我的方法并没有完全错。当我取出第一个边界时,它就起作用了。
^((?!((?<!tall) and\b)).)*book
我还不知道为什么它不工作,当我包括那个边界。但很管用。谢谢
https://stackoverflow.com/questions/51435505
复制相似问题