java - 具有多个分隔符的 Split()(不起作用)

标签 java arrays regex string parsing

所以我有一个已写入数组的文件。我想通过将字符串拆分为更小的字符串来解析该字符串。我使用 split("\s+") 通过任意空格将一个字符串与另一个字符串分隔开。不过我还想包括 (";,.\n:()")作为分隔符。有人能帮我吗?我已经尝试过split(".,;:\n()\\s+")但这会产生错误的结果。

最佳答案

这样做,

str.split("[.,;:\\n()]|\\s+");

字符类应将每个标记作为单独的分隔符。上面应该根据字符类中存在的字符中存在的字符进行拆分,或者对一个或多个空格字符进行拆分。

由于 \\s 也匹配 \\n,我只是将两者结合起来..

str.split("[.,;:()\\s]+");

关于java - 具有多个分隔符的 Split()(不起作用),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33492527/

相关文章:

java - Spring Data Rest 的 url 格式为/foo/{id}/bar

java - 拆分列表中的右子字符串

javascript - 在 javascript/nodejs 中搜索并替换所有内容

java - Regex <img> 标签解析带src,width,height

java - 在 HashMap 的 ArrayList 中搜索一个 HashMap

java - 代码不退出外部 for 循环

python - 在返回向量的函数上使用 Numpy Vectorize

javascript - 从字符串中删除前导逗号

java - 行为或 Java 数组

java - 在 java 类中编写查询时出现 "ORA-01858: a non-numeric character was found where a numeric was expected"