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