我们可以通过正则表达式split
一行:
String regex = "[\\p{P} ]+";
String[] split = line.split(regex);
但我想知道是否有办法将正则表达式缓存到Pattern
:
private static final Pattern PATTERN = Pattern.compile(regex);
然后split
使用Pattern
,就此而言:
String[] split = line.split(PATTERN);
答案 0 :(得分:3)
当然,不是String.split
,而是Pattern.split
你可以:
String[] parts = PATTERN.split(line);
但我想知道是否有办法将正则表达式缓存到模式中:
你真正的意思是,用一个可以重复使用的编译的正则表达式分开。
答案 1 :(得分:2)
答案 2 :(得分:1)
您可以使用:Pattern#split(String)这样的方法:
final Pattern p = Pattern.compile("[\\p{P} ]+");
然后使用它:
Strig[] arr = p.split(line);