Java 如何在模式类中使用变量而不是字符串?

Java 如何在模式类中使用变量而不是字符串?,java,regex,Java,Regex,我试图在两个单词之间搜索一个单词,并使用Java中的模式类。到目前为止,我的代码是: Pattern pattern = Pattern.compile("(?<=PlaintiffAtty_0).*?(?=</span>)"); Matcher matcher = pattern.matcher(sourcecode.toString()); while (matcher.find()) { System.out.println(ma

我试图在两个单词之间搜索一个单词,并使用Java中的模式类。到目前为止,我的代码是:

Pattern pattern = Pattern.compile("(?<=PlaintiffAtty_0).*?(?=</span>)");
Matcher matcher = pattern.matcher(sourcecode.toString());

        while (matcher.find()) {
            System.out.println(matcher.group().toString()); 

Pattern=Pattern.compile((?使用字符串连接,并确保字符串中的任何特殊字符都按字面处理:

Pattern.compile("(?<="+Pattern.quote(myString)+").*?(?=</span>)");

Pattern.compile(“(?使用字符串连接,并确保字符串中的任何特殊字符都按字面处理:

Pattern.compile("(?<="+Pattern.quote(myString)+").*?(?=</span>)");

Pattern.compile(“(?仅输入
String
.Magic.@BoristheSpider您是对的,我认为
Pattern.quote
“\\Q”+str+”\\E的一个别致的名称“
,。我删除了我的答案,并根据你的建议编辑了这个答案。谢谢!只需输入
字符串
。Magic.@Boristeider你是对的,我认为
模式。quote
“\\Q”+str+“\\E”
,”的别致名称。我删除了我的答案,并根据你的建议编辑了这个答案。谢谢!