-2

我有一个涉及使用 Matcher 和 Pattern 类的代码,但是我有一个包含相同“模式”的多个实例的文本。但是,我的代码会返回每个找到的匹配项并将其放入单个字符串中。我想将找到的每个匹配项放在不同的字符串/数组中。你能给我一个示例代码吗?

4

1 回答 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 回答