我想根据两个分隔符分割字符串。
- 第一个分隔符是空格“”和
- 第二个是“.”
- 但是,最后一句以句号结尾的句子不应该是 split 了。
对于给定的字符串:
Undersay v. To say by way of derogation or contradiction.
我想要以下输出
Undersay
v.
To say by way of derogation or contradiction.
最佳答案
您可以尝试使用此正则表达式:
(?=.*\.(?=.*\.))|(?<=\.)(?=.*\.)
或者作为java字符串:
" (?=.*\\.(?=.*\\.))|(?<=\\.)(?=.*\\.)"
示例 Java 代码:
final String regex1 = " (?=.*\\.(?=.*\\.))|(?<=\\.)(?=.*\\.)"
final String string = "Undersay v.To say by way of derogation or contradiction.";
String[] result=string.split(regex1);
for(String s:result) {
System.out.println(s);
}
将输出:
Undersay
v.
To say by way of derogation or contradiction.
关于Java:使用带有多个分隔符的 split 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43247109/