我正在尝试匹配包含以下两个词的所有语句
初版和测试版
我使用的正则表达式是
(?=.*ALPHA)(?=.*BETA)
我理解这意味着向前看任何字符以检查给定字符串中是否存在 ALPHA 和 BETA。
有人能告诉我如果将上面的代码改成下面这样会不会有什么后果。
(?=.*?ALPHA)(?=.*?BETA)
这个额外的问号会做什么?
我的输入字符串类似于“ALPHA|checkagainst|(BETA_val)”。 我编写的正则表达式应该为上述输入返回 true,因为同时存在单词 ALPHA 和 BETA
最佳答案
它与贪婪和非贪婪量词有关。问号表示匹配是非贪婪的,匹配尽可能少的字符。
关于python - 正则表达式匹配两个词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56143812/