在java中,如何在第一个出现的空格后找到字符串中第一个非空白字符的索引?例如,假设我有字符串:
String mystring = "one two three"
我想要一些会返回值的方法:4 由于角色" t"是在第一个空格之后的第一个字符。
答案 0 :(得分:1)
这似乎有效,输出4
public class Example {
public static void main(final String... args) {
Pattern p = Pattern.compile("([^\\s]+)?(\\s)+");
String mystring = "one two three";
final Matcher matcher = p.matcher(mystring);
matcher.find();
System.out.println(matcher.end());
}
}
答案 1 :(得分:0)
没有内置功能。但是编写一个执行此操作的函数非常简单:
public static int getIndexOfNonWhitespaceAfterWhitespace(String string){
char[] characters = string.toCharArray();
boolean lastWhitespace = false;
for(int i = 0; i < string.length(); i++){
if(Character.isWhitespace(characters[i])){
lastWhitespace = true;
} else if(lastWhitespace){
return i;
}
}
return -1;
}