我想创建一个Splitter
(番石榴)并根据正则表达式模式拆分字符串。拆分应在[
或..
字符上进行。
如果我想包括例如10个字符的分割怎么办?我是否必须在正则表达式中将|
中的每一个分开?
但以下不起作用:
Pattern.compile("[|..")
测试:test[me..once more
应该导致
test
me
once more
答案 0 :(得分:4)
您可以使用following regex分割:
(?:\[|\.\.)
在Java中,您必须转义\
。
String str = "test[me..once more";
String pattern = "(?:\\[|\\.\\.)";
String[] parts = str.split(pattern);
答案 1 :(得分:0)
您的模式不起作用,因为[
和.
是正则表达式中的控制字符。
尝试像Pattern.compile("\\[|\\.\\.")
一样转义它们(请记住,\
也需要转义)