遵循提供的建议here 我尝试使用\\ W作为java的string.split函数中非单词字符的分隔符。
String str = "id-INT, name-STRING,";
这看起来像一个非常简单的字符串。我想从这个字符串中提取单词。我得到的数组的长度是5,而它应该是4.在INT之后的位置有一个空字符串。我不明白为什么那里的空间不被视为非单词
答案 0 :(得分:6)
,
和空格被视为单独的实体,请尝试使用\\W+
String str = "id-INT, name-STRING,";
String[] parts = str.split("\\W+");
System.out.println(parts.length);
System.out.println(Arrays.toString(parts));
哪个输出
4
[id, INT, name, STRING]