gpt4 book ai didi

java - 搜索查找 AND 正则表达式组合

转载 作者:太空宇宙 更新时间:2023-11-04 11:57:48 24 4
gpt4 key购买 nike

我正在尝试重写我的正则表达式以使用逻辑条件 AND:

(?<="pies osa.")|(\w+\s?\d{1,2}) - now it is OR (Pipe)

我希望它作为查找字符串并检查正则表达式来工作。

我尝试过: (?=.*"pies osa.")(?=\w+\s?\d{1,2}) - 不适合我

我正在使用的文本:

pies osa. Pszczol 10, miod mis kon, pies osa. Kon 15

我正在尝试打印所有已匹配的单词。代码需要读出“pies osa”之后的所有单词。使用给定的正则表达式,这将只有两个匹配: - Pszczol 10Kon 15 .

最佳答案

您可以使用

"\\bpies\\s+osa\\W*(\\w+\\s*\\d+)"

请参阅regex demo 。结果位于第 1 组。

注意:如果数字可能丢失,请使用 (\\w+(?:\\s*\\d+)?) 而不是 (\\w+\\s*\\d+)

详细信息:

  • \b - 字边界
  • pies\s+osa - pies,1 个以上空格,osa
  • \W* - 零个或多个非单词字符
  • (\w+\s*\d+) - 第 1 组捕获以下序列:
    • \w+ - 1+ 个单词字符
    • \s* - 0+ 个空格
    • \d+ - 1+ 位数字

Java code :

String str = "pies osa. Pszczol 10, miod mis kon, pies osa. Kon 15";
Pattern ptrn = Pattern.compile("\\bpies\\s+osa\\W*(\\w+\\s*\\d+)");
Matcher matcher = ptrn.matcher(str);
while (matcher.find()) {
System.out.println(matcher.group(1));
}
// => Pszczol 10, Kon 15

关于java - 搜索查找 AND 正则表达式组合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41199203/

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