0

可能的重复:
远负回顾

几天来我一直在努力让它发挥作用。我昨天有一个类似的问题,但它并没有真正帮助。基本上我正在尝试创建一个匹配的模式:

(a)其中“a”可以是任何字母,例如:[a-zA-Z]. 但是,这不应该匹配:paragraph (a), (b), (c), (d) or (e);因为它以单词开头paragraph。如果只是(a), (b), (c), (d) or (e)这样,它应该会导致找到 5 个匹配项。

http://regexr.com?33ka2

4

1 回答 1

1

这就是你要找的

^(?![^()]*paragraph).*?\([a-zA-Z]\)

使用multiline选项


相反,您可以通过首先获取所有不包含的行paragraph然后收集个人来分解问题([a-zA-Z])

 Pattern p=Pattern.compile("^(?!.*paragraph).*$",Pattern.MULTILINE);
 Matcher m=p.matcher(input);
 while(m.find())
 {
     Matcher mm=Pattern.compile("\\([a-zA-Z]\\)").matcher(m.group(0));
     while(mm.find())
     {
         System.out.println(mm.group(0));
     }
 }
于 2013-02-01T08:43:08.823 回答