[英]Part I - Java Split String function
我还是java的新手。 我有如下基本的拆分字符串函数。 我需要捕获拆分后的子字符串。 我的问题是如何将单独拆分的部分移动到单独的变量中,而不是打印它们? 我是否需要另一个数组来分别移动它们? 是否有另一种更简单的方法来实现这一目标? 在第一部分中,为简单起见,我假设分隔符为空格。 感谢您的帮助!
public class SplitString {
public static void main(String[] args) {
String phrase = "First Second Third";
String delims = "[ ]+";
String[] tokens = phrase.split(delims);
String first;
String middle;
String last;
for (int i = 0; i < tokens.length; i++)
{
System.out.println(tokens[i]);
//I need to move first part to first and second part to second and so on
}
}
}
array[index]
访问array
第th个元素,因此
first = tokens[0]; // Array indices start at zero, not 1.
second = tokens[1];
third = tokens[2];
您实际上应该先检查长度,如果要分割的字符串是用户输入,请告诉用户出了什么问题。
if (tokens.length != 3) {
System.err.println(
"I expected a phrase with 3 words separated by spaces,"
+ " not `" + phrase + "`");
return;
}
如果您假设您的String
是三个单词,那么这很简单。
String first = tokens[0];
String middle = tokens[1];
String last = tokens[2];
if(tokens.length>3)
{
String first=tokens[0];
String middle=tokens[1];
String last=tokens[2];
}
如果知道拆分后最终要使用的Strings
数,则可以像这样简单地分配变量。
String first = tokens[0];
String middle = tokens[1];
String last = tokens[2];
如果令牌的数量未知,那么(据我所知)没有办法将每个令牌分配给一个单独的变量。
谢谢大家...你们所有人都以某种方式回答了我。 最初,我假设输入中只有3个条目,但事实证明它可能会有所不同:)现在,我将坚持简单地直接分配3个变量,直到我想出另一种方式! 谢谢。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.