如何检查字符串开头的空格。
答案 0 :(得分:9)
http://download.oracle.com/javase/6/docs/api/java/lang/String.html
您可以尝试myString.startswith(" ")
或myString.matches("^ +.*")
...并从每一侧移除相邻的空格:myString.trim()
答案 1 :(得分:6)
要检查第一个字符是空格:
Character.isWhitespace(myString.charAt(0))
或使用正则表达式:
myString.matches("^\\s+.*")
编辑:不要忘记先检查空字符串或零长度字符串:
if (myString != null && myString.length() > 0) {
....
}
答案 2 :(得分:1)
String str=" hi";
if(str.startsWith(""))
{
System.out.println("Space available");
}else{
System.out.println("NO Space available");
}
你也可以通过不同的方式实现它。以各种方式实现这一目标。
答案 3 :(得分:1)
再添加一个......
public static boolean isStartingWithWhitespace(String str) {
if (str == null || str.isEmpty())
return false;
return str.substring(0,1).trim().isEmpty();
}
说明:trim
将删除前导和尾随空格。如果字符串存在且不为空,那么我们从第一个char创建一个新字符串并修剪它。现在,如果结果为空,则原始字符串 以空格开头,我们返回true。否则,答案是“假”。
注意 - 此解决方案无法与Richard H's竞争,后者更优雅;)
答案 4 :(得分:-1)
it is simple just see http://docs.oracle.com/javase/6/docs/api/java/lang/String.html#trim()
trim() method trim space at starting and ending of a string by check unicode value '\u0020' (value of space)(most minimum value in unicode is '\u0020' = space) so it check every index from starting until get value greater than space unicode and also check from last until it get value greater than space and trim start & end. finally return substring without space at start and end.