String str = "00 01 02"; String[] strings = str.split(" ");
这可以按预期工作。但是如果我想将Tab添加到列表中,它将停止工作,返回整个字符串:
String[] strings = str.split(" \t");
所以,像往常一样,我要求从C#转换为Java ......
答案 0 :(得分:4)
String[] strings = str.split("\\s+");
答案 1 :(得分:2)
你可以尝试:
str.split("\\s+")
它将在任何空间分开,并将删除所有额外空间。要简单地包含选项卡,请使用:
str.split("[ \\t]")
答案 2 :(得分:0)
String.split()
采用正则表达式:
围绕给定正则表达式的匹配拆分此字符串。
答案 3 :(得分:0)
String s = "Hello this is Vivek";
String[] sArr = s.split("\\s+");
Voila完成了...... !!!!!
答案 4 :(得分:0)
split方法的第一个参数是正则表达式。这意味着,你必须用最适合你的正则表达式填充它。如果你在这里阅读:http://www.regular-expressions.info/reference.html你会发现有一个最符合你要求的令牌:\ s。它匹配空格,制表符和换行符(我不知道你是否想要覆盖换行符,但你需要的机会很多)。
另一个问题是:字符串应该只用一个空格/制表符分割吗?当你有“00 11 2”时应该怎么办?如果这是您想要的,您需要使用+,这意味着您想要通过一个或多个空格/制表符进行拆分。
因此,我建议的解决方案:
str.split("\\s+")