码迷,mamicode.com
首页 > Web开发 > 详细

JS 正则表达式去除字符串的前后空格字符

时间:2015-07-17 00:26:30      阅读:168      评论:0      收藏:0      [点我收藏+]

标签:

在web前端笔试中,总是会遇到这样的笔试题:

  例如: 清除一个字符串的前后的空白的字符

(一)挥刀准备功夫

正则表达式的基本语法:

1、Start

正则表达式总是以斜线起始和结束。 /.../

2 元字符 :是用于构建正则表达式的符号(用于连接字母和数字,创建高度描述性的文本模式)

技术分享
1 .       匹配任何字符,换行符除外。
2 \d     匹配任何数字字符。
3 \w     匹配任何字符数字(字母或数字)字符。
4 \s     匹配空格(空格包括空白字符、tab、换行符、return/enter)
5 ^      字符串需以模式起始。
6 $      字符串需以模式结束。
7 |       让模式指定一连串可供选择的子模式。
View Code

3 限定符 :控制子模式出现于正则表达式的次数

技术分享
1 *      限定符前的子模式必须出现0或多次。
2 +      限定符前的子模式必须出现1或多次。
3 ?      限定符前的子模式必须出现0或1次。
4 {n}    限定符前的子模式必须出现恰好n次。
View Code

4 字符类 以方括号围起【】

例如:

//定义正则表达式匹配0-9
var pattern = /[0-9]/;

//定义正则表达式匹配数字0-9及字母a-z
var pattern = /[0-9a-z]/;

 

如果需要转义的话,注意加上\

 

下面上代码:

技术分享
1   function ClearSpace(Str)
2         {
3 
4             var tempStr=Str.replace(/(^\s*)|(\s*)$/g,"");
5             return tempStr;
6         }
7         console.debug((" my name is    hello world! ").length);
8         console.debug(ClearSpace(" my name is    hello world! ").length);
View Code

结果图如下:

技术分享

很明显可以看到 字符串的长度减少2 因为前后的空格已经被去掉;

解析:

 var tempStr=Str.replace(/(^\s*)|(\s*)$/g,"");

首先调用了JS中String的replace的方法,

这个方法有两个参数

parm1:要替换的string或者正则表达式

Parm2:替换为的字符串,

返回值:替换后的字符串;

下面解析一下表达式:

  看到分为两部分被“|”:表示前后两个子模可以选择 ,个人人为可以理解为    或   的意思;

(^\s*):^ 上面已经显示了属于元字符中的一个 代表字符串需以模式起始。 

    \s     匹配空格(空格包括空白字符、tab、换行符、return/enter) 

右边的也是同样的道理,这样理解就ok了~~~

正则博大精深,还须一步步的走下去哇哇

以上纯属自己菜鸟的心得体会,与大家共勉,喜欢前端的小伙伴们,可以加我建的一个web前端交流群,目前就我一个群主 /(ㄒoㄒ)/~~群号:437866392

 

JS 正则表达式去除字符串的前后空格字符

标签:

原文地址:http://www.cnblogs.com/jsdabai/p/4652707.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!