如何选择一个或多个与特定单词不相交的字符

时间:2013-02-18 08:56:42

标签: java regex

我有一个简单的问题。 我想选择一个或多个与特定单词不相交的字符(起始和结束短语)。

例如:我想从下一个文本中选择1234,efghijabcklmn。

String now   = "abcd";
String next  = "1234abcdefghijabcklmn";

我试过^ abcd,^(abcd),[^ a] [^ b] [^ c] [^ d]没什么用。我知道这可以通过拆分和标记来完成。但我希望它通过正则表达式。

2 个答案:

答案 0 :(得分:3)

  

我知道这可以通过拆分和标记来完成。但我想要它   通过正则表达式。

好吧,String#split(regex)仅以regex为参数。所以,为什么不使用它,因为这个问题是拆分的理想候选者。

   
String now = "abcd";
String next = "1234abcdefghijabcklmn";

System.out.println(Arrays.toString(next.split(Pattern.quote(now))));

答案 1 :(得分:2)

刚刚拆分abcd ......

System.out.println(Arrays.toString("1234abcdefghijabcklmn".split("abcd")));