java - 对空格、 "("和 ")"进行字符串 split()

标签 java string split

我有一个字符串

String testString = "IN NEWYORK AND (OUT FLORIDA)" ; 

我想在数组中拆分这个字符串,例如:

String testArray[] = testString.split("\\s()");

我希望结果是:

testArray[0] = "IN";
testArray[1] = "NEWYORK";
testArray[2] = "AND";
testArray[3] = "(";
testArray[4] = "OUT";
testArray[5] = "FLORIDA";
testArray[6] = ")";

但是,我得到的输出是:

testArray[0] = "IN";
testArray[1] = "NEWYORK";
testArray[2] = "AND";
testArray[3] = "(OUT";
testArray[4] = "FLORIDA)";

它在空格上分割,但不在“(”和“)”上分割,我希望“(”和“)”作为单独的字符串。

最佳答案

尝试以下操作:

String testArray[] = testString.split("\\s|(?<=\\()|(?=\\))");

关于java - 对空格、 "("和 ")"进行字符串 split(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12777905/

相关文章:

java - Java 中的 Makefile 创建

Java构造函数NullPointerException问题

java - 使用 Jackson 映射 JSON 对象

ios - 如何将文本写入 swift3 iOS 中保存在服务器上的文件

php - 如何在 PHP 中将两个字符串组合在一起?

mysql - 没有在 Mysql 参数中获取值

java - 当可以导入 java 类时为什么要使用依赖注入(inject)?

arrays - 如何在 Swift 中拆分没有分隔符的字符串

python - 使用 raw_input 时如何限制可能的输入? (也使用分割)

java - 如何在Java中分割所有值,甚至是空值