js替换字符串两端的空格,逗号,或其它任何的符号其实是很简单的,但为什么要在这儿讲呢?有一个问题是,如果字符串两端是一个或多个逗号,有可能只有一端有逗号,这种情况该怎么用正则表达式来解决呢?
下面我列举几种情况,例如将下面这些字符的两端符号去除掉,该怎么搞定?
情况一:
1:“hello ” //右边一个空格
2:“ hello ” //左右两边都有一个空格
3:“ hello” //左边两个空格,右边一个空格
........还有很多,该如何解决了,很简单,如下RegExp正则表达式就可以replace方法替换掉。
//str表示上面的任何情况,\s表示空格转义符,*表示0个到多个 var str = xxx; str = str.replace(new RegExp("\\s*(hello)\\s*"),"");
情况二:
1:“hello,” //右边一个逗号
2:“,hello,” //左右两边都有一个逗号
3:“,,, hello,” //左边三个逗号,右边一个逗号
解决方法如下。
//str表示上面的任何情况,\,表示逗号转义符,*表示0个到多个 var str = xxx; str = str.replace(new RegExp("\\,*(hello)\\,*"),"");
此正则表达式方法要比js trim()方法好用很多。
如果这篇文章解决了你问题,请点击上面的分享收藏起来吧!