Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何检查字符串开头的空格?_Java - Fatal编程技术网

Java 如何检查字符串开头的空格?

Java 如何检查字符串开头的空格?,java,Java,如何检查字符串开头的空格。 您可以使用(“”)尝试myString.startswith 或myString.matches(“^+.*) …若要从每一侧删除带边框的空白,请执行以下操作:myString.trim()若要检查第一个字符是否为空白: Character.isWhitespace(myString.charAt(0)) 或者使用正则表达式: myString.matches("^\\s+.*") 编辑:不要忘记先检查空字符串或零长度字符串: if (myString != nu

如何检查字符串开头的空格。

您可以使用(“”)尝试
myString.startswith

myString.matches(“^+.*)


…若要从每一侧删除带边框的空白,请执行以下操作:
myString.trim()

若要检查第一个字符是否为空白:

Character.isWhitespace(myString.charAt(0))
或者使用正则表达式:

myString.matches("^\\s+.*")
编辑:不要忘记先检查空字符串或零长度字符串:

if (myString != null && myString.length() > 0) {
  ....  
}

你也可以通过不同的方式实现它。实现这一点的方法多种多样。

只需再添加一个

public static boolean isStartingWithWhitespace(String str) {
   if (str == null || str.isEmpty())
      return false;

   return str.substring(0,1).trim().isEmpty();
}
说明:
trim
将删除前导空格和尾随空格。如果字符串存在并且不是空的,那么我们从第一个字符创建一个新字符串并修剪它。现在,如果结果为空,则原始字符串确实以空格开头,我们返回true。否则,答案是“假”

注意-此解决方案无法与之竞争,后者更优雅;)

很简单,你看

trim()方法通过检查unicode值'\u0020'(空格值)在字符串的开始和结束处修剪空格(unicode中的最大最小值为'\u0020'=空格)
所以它从开始检查每个索引,直到得到大于空格的值,还从最后检查,直到得到大于空格的值,并修剪开始和结束。最后返回开始和结束处没有空格的子字符串。

如果
String myString=“”是你前面的那一行吗?@Bohemium:我假设检查是否正常,比如空值或零长度;我相信OP有足够的智慧来检查这些。我已经更新了我的答案。你说的“检查”到底是什么意思?如果你想检查任何空格(不仅是空格字符,还有制表符、换行符等),你可以使用
myString.matches(^\\s+.*)
@arnaud,这只是检查空格,而不是
空格。trim()删除
\0
和``之间的字符,其中包括一些非空格字符,并遗漏了一些空格字符。@arnaud-我认为您需要在匹配正则表达式的末尾添加“*”;否则它将只匹配完全是空格的字符串。问题是:空格,而不是空格(
'
)。这是不同的。空白是一类字符,例如包括
\n
;str=str.trim();系统输出打印项次(str);
public static boolean isStartingWithWhitespace(String str) {
   if (str == null || str.isEmpty())
      return false;

   return str.substring(0,1).trim().isEmpty();
}