Mr *_*gan 5 java string substring
任何人都可以就一个困扰我的问题提出建议吗?我有一个Java .jar文件,它从一个方法返回一个字符串,如下所示:
integer integer integer block_of_text
Run Code Online (Sandbox Code Playgroud)
这是三个整数,可以是正数或负数,每个整数用单个空格分隔,然后是一个文本块之前的另一个空格,它可以包含任何字符,但不应包含回车符.现在我想我可以读取每个初始整数的空格字符的子字符串,然后只需一次读取剩余的文本.
我应该补充一点,无论文本块包含什么内容,都不会被分解.
但有人可以提出更好的选择吗?
感谢受访者.这让我头疼!
mae*_*ics 11
您可以使用其形式String#split(regex,limit)限制:
String s = "123 456 789 The rest of the string";
String ss[] = s.split(" ", 4);
// ss = {"123", "456", "789", "The rest of the string"};
Run Code Online (Sandbox Code Playgroud)
您可以使用String.splitspace作为分隔符,并将限制设置为4:
String[] result = s.split(" ", 4);
Run Code Online (Sandbox Code Playgroud)
你也可以使用Scanner.这不仅会拆分文本,还会解析整数int.根据是否需要三个整数作为int或者String,你可能会发现这更方便:
Scanner scanner = new Scanner(s);
int value1 = scanner.nextInt();
int value2 = scanner.nextInt();
int value3 = scanner.nextInt();
scanner.skip(" ");
String text = scanner.nextLine();
Run Code Online (Sandbox Code Playgroud)
看到它在线工作:ideone.
| 归档时间: |
|
| 查看次数: |
16797 次 |
| 最近记录: |