Java如何去掉字符串前后的空格

发布时间:2022-02-19 15:50:26 作者:iii
来源:亿速云 阅读:679

这篇文章主要介绍“Java如何去掉字符串前后的空格”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Java如何去掉字符串前后的空格”文章能帮助大家解决问题。

问题描述:

java去除字符串前后空白,身为小伙子的我搞了大半天,其实蛮简单的。

解决方案:

方式一:

trim() trim()是 String里的常用的方法,作用:返回字符串的副本,忽略前导空白和尾部空白*

方式二:正则表达式:

replaceAll(String regex,String replacement):也是String类的常用方法,

是一个形参为可以填正则表达式,第二形参为替换的内容

这里需要的正则式:

(1) s 表示空格,

(2) ^表示开头

(3) $表示结尾

(4) +表示数量

补充:JAVA正则表达式匹配多个空格

需求

针对tab键带来的多个空格问题,有时候我们针对带空格的一行数据要进行切割,如果有多个空格就会出现就会切割空格出现,我们想把空格都去掉,所以需要用到某些方法。

解决方案

利用正则表达式来匹配空格

\s+

首先利用split("\s+");方法来对字符串切割,尽可能的匹配空格,这里也挺有意思,因为空格数目不一样,可以动态变换匹配的空格数量,这个实现原理可以看看底层原理,挺有意思。

测试:

  String string="a   b  a  a ";
  for(String a:string.split("\s+")){
   System.out.println(a);
  }

扩充知识

正则表达式的() [] {}有不同的意思。

() 是为了提取匹配的字符串。表达式中有几个()就有几个相应的匹配字符串。(s*)表示连续空格的字符串。

[]是定义匹配的字符范围。比如 [a-zA-Z0-9] 表示相应位置的字符要匹配英文字符和数字。[s*]表示空格或者*号。

{}一般用来表示匹配的长度,比如 s{3} 表示匹配三个空格,s{1,3}表示匹配一到三个空格。

(0-9) 匹配 '0-9′ 本身。 [0-9]* 匹配数字(注意后面有 *,可以为空)[0-9]+ 匹配数字(注意后面有 +,不可以为空){1-9} 写法错误。

[0-9]{0,9} 表示长度为 0 到 9 的数字字符串

()和[]有本质的区别

()内的内容表示的是一个子表达式,()本身不匹配任何东西,也不限制匹配任何东西,只是把括号内的内容作为同一个表达式来处理,

例如:(ab){1,3},就表示ab一起连续出现最少1次,最多3次。如果没有括号的话,ab{1,3},就表示a,后面紧跟的b出现最少1次,最多3次。另外,括号在匹配模式中也很重要。这个就不延伸了,LZ有兴趣可以自己查查

[]表示匹配的字符在[]中,并且只能出现一次,并且特殊字符写在[]会被当成普通字符来匹配。例如[(a)],会匹配(、a、)、这三个字符。

所以() [] 无论是作用还是表示的含义,都有天壤之别,没什么联系

关于“Java如何去掉字符串前后的空格”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注亿速云行业资讯频道,小编每天都会为大家更新不同的知识点。

推荐阅读:
  1. 去掉字符串里的空格
  2. php去掉字符串首尾空格的方法

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

java

上一篇:Java向下转型基础知识内容有哪些

下一篇:javascript具备哪些特点

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》