gpt4 book ai didi

java - 正则表达式查找最后一个大写单词和另一个单词之间的单词

转载 作者:行者123 更新时间:2023-11-29 10:02:11 25 4
gpt4 key购买 nike

我的问题是在两个词之间找到一个词。在这两个词中,一个是全大写的词,可以是任何东西,另一个是"is"。我尝试了几个正则表达式,但没有一个对我有帮助。这是我的例子:

字符串:

In THE house BIG BLACK cat is very good.

预期输出:

cat

使用正则表达式:

(?<=[A-Z]*\s)(.*?)(?=\sis)

上面的 RegEx 给了我 BIG BLACK cat 作为输出,而我只需要 cat

最佳答案

一个解决方案是稍微简化您的正则表达式,

[A-Z]+\s(\w+)\sis

并仅使用匹配的组(即 \1)。 See it in action here.

既然你想出了更复杂的东西,我假设你理解上面表达式的所有部分,但对于以后可能会出现的人来说,这里有更多细节:

  • [A-Z]+ 将匹配一个或多个大写字符
  • \s 将匹配一个空格
  • (\w+) 将匹配一个或多个单词字符([a-zA-Z0-9_])并将匹配存储在第一个匹配组<
  • \s 将匹配一个空格
  • is 将匹配“is”

我的示例非常具体,可能会因不同的输入而崩溃。您的问题没有提供很多关于您期望的其他输入的详细信息,因此我不确定我的解决方案是否适用于所有情况。

关于java - 正则表达式查找最后一个大写单词和另一个单词之间的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21131022/

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