gpt4 book ai didi

Java 正则表达式 逻辑 OR

转载 作者:行者123 更新时间:2023-12-02 08:35:19 31 4
gpt4 key购买 nike

我正在尝试匹配给定字符串中一组短语中的任何或全部。这是我的正则表达式:

(^|\\W)(" + phrase1 + "|" + phrase2 + "|" + phrase3 + ... ")(\\W|$)

我需要能够匹配我正在ORing的任意数量的短语。它似乎工作正常,除非两个短语紧邻出现。因此 "phrase1 lorem ipsumphrase2 lorem ipsum" 匹配phrase1和phrase2,但"phrase1phrase2lorem ipsum"仅匹配phrase1("phrase1.phrase2lorem ipsum也是如此“)。如果短语 1 和短语 2 之间存在多个非单词字符(例如,两个或多个空格),则它也匹配两者。我做错了什么?

最佳答案

这是因为你的正则表达式两边都有 \\W 。也就是说,第一个非单词字符与第一个匹配项匹配,那么第二个匹配项又需要一个非单词字符。

关于Java 正则表达式 逻辑 OR,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2010569/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com