我有一个涉及使用 Matcher 和 Pattern 类的代码,但是我有一个包含相同“模式”的多个实例的文本。但是,我的代码会返回每个找到的匹配项并将其放入单个字符串中。我想将找到的每个匹配项放在不同的字符串/数组中。你能给我一个示例代码吗?
问问题
1711 次
1 回答
0
你的问题我不清楚。
但是,我假设,您强调的文本输入字符串在数组或列表中。并且您想从与正则表达式匹配的输入字符串中创建新的数组或列表。
那么这里是这个的解决方案:
Pattern p = Pattern.compile("Java");//any regex
List<String> inputStrings = new ArrayList<String>();
List<String> matched = new ArrayList<String>();
//test strings
inputStrings.add("Java hello");
inputStrings.add("Javaaa");
inputStrings.add("aaaJavaaa");
inputStrings.add("Jvaaa");
//do
for (String curStr : inputStrings) {
Matcher matcher = p.matcher(curStr);
while (matcher.find()) {
matched.add(curStr);
}
}
于 2011-12-04T10:34:40.987 回答