Java 如果字符串位于字符串之后,如何使用模式进行检查?

Java 如果字符串位于字符串之后,如何使用模式进行检查?,java,regex,Java,Regex,如果字符串在字符串之后,如何使用Pattern.compile进行检查?例如,我有字符串: “我非常喜欢编程!” 当且仅当前面有一个单词love或like时,如何仅输出单词programming?什么是正则表达式?最简单的方法是使用 .*?(?:love|like).*(programming) 使用lookaheads (?=.*?(love|like).*?(programming)) Java代码 最简单的方法是使用 .*?(?:love|like).*(programming)

如果字符串在字符串之后,如何使用Pattern.compile进行检查?例如,我有字符串:
“我非常喜欢编程!”

当且仅当前面有一个单词
love
like
时,如何仅输出单词
programming
?什么是正则表达式?

最简单的方法是使用

.*?(?:love|like).*(programming)

使用
lookaheads

(?=.*?(love|like).*?(programming))

Java代码


最简单的方法是使用

.*?(?:love|like).*(programming)

使用
lookaheads

(?=.*?(love|like).*?(programming))

Java代码


不要使用模式,只需使用
replaceAll()


这将匹配整个字符串,用组2中捕获的内容替换它,有效地“提取”目标,该目标匹配为“非空白字符”。

不使用模式,只使用
replaceAll()


这将匹配整个字符串,用第2组中捕获的内容替换它,有效地“提取”目标,并将其匹配为“非空白字符”。

我认为这是实现这一点的一种方法

   String s = "I love programming a lot!";

    if (s.contains("like") || s.contains("love")) {
        System.out.println(s);
    }

这是我认为的写作方法

   String s = "I love programming a lot!";

    if (s.contains("like") || s.contains("love")) {
        System.out.println(s);
    }
String s=“我非常喜欢编程!”;
字符串条件1=s.indexOf(“love”);
字符串条件2=s.indexOf(“like”);
字符串条件3=s.indexOf(“编程”);
如果(条件1<条件3 | |条件2<条件3){
System.out.println(“编程”);//如果不是硬编码,则获取值
}
String s=“我非常喜欢编程!”;
字符串条件1=s.indexOf(“love”);
字符串条件2=s.indexOf(“like”);
字符串条件3=s.indexOf(“编程”);
如果(条件1<条件3 | |条件2<条件3){
System.out.println(“编程”);//如果不是硬编码,则获取值
}

如果我在
后面有一个任意的词,比如
,那该怎么办。有什么办法吗@rock321987@Maximillan它适用于任何单词..试试..你能指定大小写吗?@Maximillan你需要事先知道这个单词..如果你事先知道这个单词(或者它是用户输入),你如何才能确定在
love
like
之后匹配哪个单词,你可以把它和正则表达式连接起来……这正是我想要的!但是如何连接呢?例如,给定
I love x
它应该只打印
x
,其中
x
可以是任何单词。如果我在
后面有一个任意单词,比如
love
,该怎么办。有什么办法吗@rock321987@Maximillan它适用于任何单词..试试..你能指定大小写吗?@Maximillan你需要事先知道这个单词..如果你事先知道这个单词(或者它是用户输入),你如何才能确定在
love
like
之后匹配哪个单词,你可以把它和正则表达式连接起来……这正是我想要的!但是如何连接呢?例如,给定的
I love x
应该只打印
x
其中
x
可以是任何单词。例如,给定的I love x应该只打印x,其中x可以是任何单词@Bohemian@max这就是它的作用什么是“2美元”@Bohemian@max第二组退出比赛。用括号组成一个组。组从1开始编号,例如,给定I love x,它应该只打印x,其中x可以是任何单词@Bohemian@max这就是它的作用什么是“2美元”@Bohemian@max第二组退出比赛。用括号组成一个组。组从1开始编号