检查java中包含空格的字符串的排列

时间:2017-05-14 03:05:57

标签: java string if-statement spaces

我如何检查以确保字符串不包含Java中空格字符的任何排列?

即,我想检查我的字符串是否等于""" "" "等。

我不想只检查我的字符串是否包含空格,因为如果我有一个字符串"My code works",则不应该解析它。我想只检查包含空格的字符串,而不检查任何字母或其他字符。

这可以在单个if语句中完成吗?

4 个答案:

答案 0 :(得分:2)

String#matches()与模式\s*一起使用。此模式将匹配空字符串或任意数量的连续空格。

String input = "   ";
if (input.matches("\\s*")) {
    System.out.println("match");
}

答案 1 :(得分:1)

如果可能,您还可以使用apache commons提供的StringUtils.isBlank(aString)

 Checks if a CharSequence is whitespace, empty ("") or null.

 StringUtils.isBlank(null)      = true
 StringUtils.isBlank("")        = true
 StringUtils.isBlank(" ")       = true
 StringUtils.isBlank("  ")      = true
 StringUtils.isBlank("bob")     = false
 StringUtils.isBlank("  bob  ") = false

答案 2 :(得分:1)

另一种方式

if(input.trim().length() == 0) {
    ...
}

答案 3 :(得分:0)

这对我来说效果最好:

for (i = 0; i < string.length(); i++) {
    string = string.get(i).replaceAll(" ", "");
}

if (string.equals("")) {
    //do something
}