您的位置:首页 > 其它

关于字符串的trim()和截取空格(2015年9月19日)

2015-09-21 20:51 267 查看
public String trim()

返回字符串的副本,忽略前导空白和尾部空白。
如果此
String
对象表示一个空字符序列,或者此
String
对象表示的字符序列的第一个和最后一个字符的代码都大于
'\u0020'
(空格字符),则返回对此
String
对象的引用。

否则,若字符串中没有代码大于
'\u0020'
的字符,则创建并返回一个表示空字符串的新
String
对象。

否则,假定 k 为字符串中代码大于
'\u0020'
的第一个字符的索引,m 为字符串中代码大于
'\u0020'
的最后一个字符的索引。创建一个新的
String
对象,它表示此字符串中从索引 k 处的字符开始,到索引
m 处的字符结束的子字符串,即
this.substring(k, m+1)
的结果。

此方法可用于截去字符串开头和末尾的空白(如上所述)。

返回:此字符串移除了前导和尾部空白的副本;如果没有前导和尾部空白,则返回此字符串。

简单的讲,就是截取了字符串前后的空格。

那么问题来了,我要截取掉中间的空格,可以用string.replaceAll(oldstr,newstr),即String newstr = string.replaceAll(" ","");

public String replaceAll(String regex,
String replacement)

使用给定的 replacement 替换此字符串所有匹配给定的正则表达式的子字符串。
调用此方法的 str.replaceAll(regex, repl) 形式与以下表达式产生的结果完全相同:

Pattern
.
compile
(regex).
matcher
(str).
replaceAll
(repl)
注意,在替代字符串中使用反斜杠 (\) 和美元符号 ($) 与将其视为字面值替代字符串所得的结果可能不同;请参阅
Matcher.replaceAll
。如有需要,可使用
Matcher.quoteReplacement(java.lang.String)
取消这些字符的特殊含义。

参数:
regex
- 用来匹配此字符串的正则表达式
replacement
- 用来替换每个匹配项的字符串 返回:所得 String 抛出:
PatternSyntaxException
- 如果正则表达式的语法无效

public String replaceFirst(String regex,
String replacement)

使用给定的 replacement 替换此字符串匹配给定的正则表达式的第一个子字符串。
调用此方法的 str.replaceFirst(regex, repl) 形式与以下表达式产生的结果完全相同:

Pattern
.
compile
(regex).
matcher
(str).
replaceFirst
(repl)
注意,在替代字符串中使用反斜杠 (\) 和美元符号 ($) 与将其视为字面值替代字符串所得的结果可能不同;请参阅
Matcher.replaceFirst(java.lang.String)
。如有需要,可使用
Matcher.quoteReplacement(java.lang.String)
取消这些字符的特殊含义。

参数:
regex
- 用来匹配此字符串的正则表达式
replacement
- 用来替换第一个匹配项的字符串 返回:所得 String

replaceFirst应用场景蛮多,拼凑的hql语句,需要把第一个and转换成where就可以用到。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: