我想知道如何检索字符串数组中存在的更多相似模式,而不管字符串长度和存在多少这样的相似模式..
例如:
哈利·詹姆斯·波特也被称为波特先生。波特在憔悴中非常有名。哈利·詹姆斯·波特也称波特先生。
我需要找到哈利詹姆波特和波特先生之间的内容:
输出应该是
- 也被称为
- 也被称为
谁能帮我吗?
这是我的代码:
import java.util.regex.Pattern;
import java.util.regex.Matcher;
public class RegexTestHarness {
public static void main(String[] args){
String regex = "Harry James Potter (.*?) Mr.Potter";
String strToSearch = "Harry James Potter also known as Mr.Potter. Harry James Potter is famous as Mr. Potter";
Pattern pattern = Pattern.compile(regex, Pattern.CASE_INSENSITIVE);
Matcher matcher = pattern.matcher(strToSearch);
while (matcher.find()) {
System.out.println("Text is at "+matcher.group()+"::"+matcher.start()+":: "+matcher.end());
System.out.println(matcher.groupCount());
System.out.println(matcher.group(1));
}
}
}