我正在尝试将字符串加载到数组中,删除所有空格和标点符号。问题是,如果我连续有两个分隔符,它会在数组中留下一个空白。
我有什么:
String[] temparray =inputstr.split("\\s+|,|;|\\(|\\)|, ");
示例:
inputstr = "I bought bread, eggs, and milk"
输出为:
I
bought
bread
eggs
and
milk
任何人都知道如何在逗号加载到数组后保留空格?
答案 0 :(得分:2)
您可以使用character class对所有分隔符进行分组
String[] temparray = inputstr.split("[\\s,;()]+");
答案 1 :(得分:1)
您可以将这两种情况合并为"逗号"和"逗号后跟空格"使用?
元字符表示"可选"。
我已将,
替换为, ?
(逗号空格 - 问号)。这样,空间就可以作为分隔符的一部分进行匹配。
// space here ---v
String[] temparray = inputstr.split("\\s+|, ?|;|\\(|\\));
打印阵列的每个元素:
I
bought
bread
eggs
and
milk