什么是种Java的空格呢? 我需要在我的代码检查,如果文本包含空格的任何。
我的代码是:
if (text.contains(" ") || text.contains("\t") || text.contains("\r")
|| text.contains("\n"))
{
//code goes here
}
我已经知道\n
, \t
, \r
和space
。
什么是种Java的空格呢? 我需要在我的代码检查,如果文本包含空格的任何。
我的代码是:
if (text.contains(" ") || text.contains("\t") || text.contains("\r")
|| text.contains("\n"))
{
//code goes here
}
我已经知道\n
, \t
, \r
和space
。
boolean containsWhitespace = false;
for (int i = 0; i < text.length() && !containsWhitespace; i++) {
if (Character.isWhitespace(text.charAt(i)) {
containsWhitespace = true;
}
}
return containsWhitespace;
或者,使用番石榴,
boolean containsWhitespace = CharMatcher.WHITESPACE.matchesAnyOf(text);
对于非正则表达式的方法,你可以检查Character.isWhitespace
每个字符。
boolean containsWhitespace(String s) {
for (int i = 0; i < s.length(); ++i) {
if (Character.isWhitespace(s.charAt(i)) {
return true;
}
}
return false;
}
这是在Java中的空格?
该文件指定了Java的认为是空白:
public static boolean isWhitespace(char ch)
确定指定字符是根据Java的空白。 一个字符是一个Java空白字符,当且仅当它满足下列条件之一:
- 它是Unicode空格字符(SPACE_SEPARATOR,LINE_SEPARATOR,或PARAGRAPH_SEPARATOR),但不也是一个非中断空格( '\ u00A0', '\ u2007', '\ u202F')。
- 它是
'\u0009'
,纵向制表。- 它是
'\u000A'
,换行。- 它是
'\u000B'
,垂直列表。- 它是
'\u000C'
,进纸。- 它是
'\u000D'
,回车。- 它是
'\u001C'
,文件分隔符。- 它是
'\u001D'
,组分隔符。- 它是
'\u001E'
,记录分隔符。- 它是
'\u001F'
,UNIT分隔符。
使用Character.isWhitespace() ,而不是创建自己的。
在Java中一个人如何把字符串转换成char或一个char为一个字符串?
如果你能在你的项目中使用apache.commons.lang,最简单的方法是只使用方法提供了:
public static boolean containsWhitespace(CharSequence seq)
检查给定的CharSequence中是否包含任何空白字符。
参数:
seq - the CharSequence to check (may be null)
返回:
true if the CharSequence is not empty and contains at least 1 whitespace character
它处理空和空参数,并提供了在中心位置的功能。
如果你要考虑这样做的基于正则表达式的方法
if(text.split("\\s").length > 1){
//text contains whitespace
}
来自Sun 文档 :
\ S空白字符:[\吨\ n \ X0B \˚F\ R]
最简单的方法是用正则表达式中使用它。
boolean whitespaceSearchRegExp(String input) {
return java.util.regex.Pattern.compile("\\s").matcher(input).find();
}
你为什么不检查是否text.trim()具有不同的长度? :
if(text.length() == text.trim().length() || otherConditions){
//your code
}