【发布时间】:2015-05-25 22:39:46
【问题描述】:
我有一个字符串,它有两个单词,它们之间有 3 个空格。例如:"Hello Java"。我需要从这个字符串中提取“Java”。我搜索了正则表达式和令牌,但找不到解决方案。
【问题讨论】:
我有一个字符串,它有两个单词,它们之间有 3 个空格。例如:"Hello Java"。我需要从这个字符串中提取“Java”。我搜索了正则表达式和令牌,但找不到解决方案。
【问题讨论】:
您所要做的就是将字符串除以空格并获得第二个索引,因为 Java 在第一个空格之后。你说它有 3 个空格,所以你可以这样做:
string.split(" ")[1];
在您的情况下,如果字符串等于带有三个空格的 Hello Java,这将起作用。
【讨论】:
您可以通过多种方式执行此操作,但您选择哪种方式取决于您期望输入的变化方式。如果您可以假设字符串中总是正好有 3 个空格,所有空格都是连续的,那么只需使用 indexOf 方法来定位第一个空格,将 3 添加到该索引,并使用结果值获取一个子字符串。如果您不确定会有多少个连续空格,请使用 lastIndexOf 并加 1。您也可以使用另一种解决方案中提到的 split 方法。
例如:
String s = "Hello Java";
s = s.substring(s.lastIndexOf(" ")+1);
System.out.println(s);
【讨论】: