我使用特定模式试图获得没有标点符号的句子。 我有这个:
p = Pattern.compile("[\\p{Punct}\\s]+");
String[] all = p.split("int a = 4;");
我得到了数组
all = {int, a, 4};
这很棒,但我希望我的模式也能保持" []"如果它存在例如:
String[] all = p.split("int[] a = 4;");
并获取
all = {int,[], a, 4};
这是我希望模式添加" []"没有其他的。 有办法吗?
答案 0 :(得分:2)
试试这个:
Pattern p = Pattern.compile("[[\\p{Punct}&&[^\\[\\]]]\\s]+");
[
和]
个字符被视为标点字符。在拆分字符串时,此正则表达式将排除它们。