Java中处理字符串多余空格需区分首尾与中间:trim()仅去首尾空白,replaceAll("s+", " ")压缩中间连续空白为单空格;推荐组合使用trim().replaceAll("s+", " ")或Apache Commons的StringUtils.normalizeSpace()。

Java中处理字符串多余空格,核心是区分“首尾空格”和“中间多余空格”——trim()只去首尾,正则替换才能压缩中间多个空格为一个。
String.trim() 是最基础也最安全的方式,它会移除字符串开头和结尾的所有 Unicode 空白字符(包括空格、制表符、换行符等),但不会动中间的空格。
用 replaceAll("s+", " ") 可把连续的空白字符(空格、制表、换行等)统一替换成一个空格,再配合 trim() 就能实现“全清理”。
" a b
c
".replaceAll("\s+", " ").trim() → "a b c"
" +" 替代 "\s+"
实际业务中推荐组合使用,兼顾首尾清理与中间压缩:
str == null ? "" : str.trim().replaceAll("\s+", " ")"[ \t\f]+" 排除
StringUtils.normalizeSpace(str),功能等价且自动判空,可直接引入依赖使用基本上就这些。不复杂但容易忽略的是:空格类型不止 ' ',还有各种不可见字符,用 \s+ 更稳妥;而过度依赖 replace(" ", "") 可能误删有效空格,得不偿失。
以上就是在Java中如何处理字符串中的多余空格_空格处理技巧解析的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号