用正则表达式将前后空格用空字符串替代:replace(/(^\s*)|(\s*$)/g, "")

高手给详解一下(/(^\s*)|(\s*$)/g,"")中每个符号的意思?... 高手给详解一下(/(^\s*)|(\s*$)/g, "") 中每个符号的意思? 展开
 我来答
Nigel_FB
推荐于2017-11-22 · TA获得超过1386个赞
知道小有建树答主
回答量:470
采纳率:0%
帮助的人:398万
展开全部
^表示字符串必须以后面的规则开头, 在这里就是说字符串必须以\s*开头.

\s 是空格的意思, * 表示有0个或多个

\s* 就是有0个或多个空格

(^\s*) 表示的就是以0个空格或者多个空格开头

| 表示或的意思, 也就是满足| 左边的也成立, 满足 | 右面的也成立.

\s*前面说过了

$ 的意思是字符串必须以前面的规则结尾

(\s*$) 的意思就是, 以0个空格或者多个空格结尾

/.../g 是正则表达式的属性, 表示全文匹配, 而不是找到一个就停止.

所以这个正则表达式替换的就是前导空格和后导空格
因为有前导空格, 就说明以0个或多个空格开头, 满足正则表达式中 | 前面的条件: (^\s*)
而如果有后导空格, 就说明以0个或多个空格结尾, 满足正则表达式中 | 后面的条件: (\s*$)
勘破三春mM
2009-08-12 · TA获得超过1327个赞
知道答主
回答量:110
采纳率:0%
帮助的人:76.2万
展开全部
正则表达式的介绍:

1.可以使用字符作为一个通配符来代替除换行符(\n)之外的任意一个字符,例如: .at可以与"cat","sat","mat"等匹配.通常,这种通配符用于操作系统中文件名匹配.

2.[a-z],任何含在[]中的内容都是一个字符,只匹配一个字符.

如:[a-zA-Z]代表任意大小写字母.

3.[^a-z].匹配任何不属于a-z中的字符.

4.[a-z&&[hij]].匹配hij任何一个(交集)

5.\s.匹配空字符(空格,tab,\n,换页,回车)

6.\S.匹配非空字符(和[^\s]一样)

7.\d.匹配数字,相当于[0-9]

8.\D.匹配非数字,相当于[^0-9],匹配中文,空格,换行符

9.\w.匹配词字符,相当于[a-zA-Z0-9],不包含中文,不能代表空格,换行符

10.\W.匹配非词字符,相当于[^\w],匹配一个中文字

逻辑运算符:

|:管道符.如:x|y表示x或y

():捕获组.(abc)|(xyz)表示abc或xyz

边界匹配符:

^:从头匹配

$:从尾匹配

\b:词界.

\B.非词界

量词:

量词描述一个模式吸收输入文本的方式.

*:前面字符或组匹配0或多个

+:前面字符或组匹配1或多个

?:前面字符或组匹配0或1个

{n}:前面字符或组的数量为n个

{n,}:前面字符或组的数量至少n个

{n,m}:前面字符或组数量至少n个,最多m个

^表示字符串必须以后面的规则开头, 在这里就是说字符串必须以\s*开头.

\s 是空格的意思, * 表示有0个或多个

\s* 就是有0个或多个空格

(^\s*) 表示的就是以0个空格或者多个空格开头

| 表示或的意思, 也就是满足| 左边的也成立, 满足 | 右面的也成立.

\s*前面说过了

$ 的意思是字符串必须以前面的规则结尾

(\s*$) 的意思就是, 以0个空格或者多个空格结尾

/.../g 是正则表达式的属性, 表示全文匹配, 而不是找到一个就停止.

所以这个正则表达式替换的就是前导空格和后导空格
因为有前导空格, 就说明以0个或多个空格开头, 满足正则表达式中 | 前面的条件: (^\s*)
而如果有后导空格, 就说明以0个或多个空格结尾, 满足正则表达式中 | 后面的条件: (\s*$)

ok吧 选我咋样
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友c4249ef
2009-08-12 · TA获得超过4867个赞
知道大有可为答主
回答量:1855
采纳率:0%
帮助的人:3224万
展开全部
//g就是表明是用正则表达式,g表示全局搜索

(^\s*) ^表示串开始,\s表示任意一个空字符,比如空格.制表符啥的,*表示前面的字符0个或多个,也就是匹配串前面的任意长度空字符

| 表示或,表示同时匹配

(\s*$) $表示串最后,也就是匹配串最后的任意长度空字符

也就是说这个表达式匹配串前后的空格等空字符
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
杯面小王子
2009-08-12 · TA获得超过108个赞
知道答主
回答量:66
采纳率:100%
帮助的人:37.9万
展开全部
全给你好了~

正则表达式的介绍:

1.可以使用字符作为一个通配符来代替除换行符(\n)之外的任意一个字符,例如: .at可以与"cat","sat","mat"等匹配.通常,这种通配符用于操作系统中文件名匹配.

2.[a-z],任何含在[]中的内容都是一个字符,只匹配一个字符.

如:[a-zA-Z]代表任意大小写字母.

3.[^a-z].匹配任何不属于a-z中的字符.

4.[a-z&&[hij]].匹配hij任何一个(交集)

5.\s.匹配空字符(空格,tab,\n,换页,回车)

6.\S.匹配非空字符(和[^\s]一样)

7.\d.匹配数字,相当于[0-9]

8.\D.匹配非数字,相当于[^0-9],匹配中文,空格,换行符

9.\w.匹配词字符,相当于[a-zA-Z0-9],不包含中文,不能代表空格,换行符

10.\W.匹配非词字符,相当于[^\w],匹配一个中文字

逻辑运算符:

|:管道符.如:x|y表示x或y

():捕获组.(abc)|(xyz)表示abc或xyz

边界匹配符:

^:从头匹配

$:从尾匹配

\b:词界.

\B.非词界

量词:

量词描述一个模式吸收输入文本的方式.

*:前面字符或组匹配0或多个

+:前面字符或组匹配1或多个

?:前面字符或组匹配0或1个

{n}:前面字符或组的数量为n个

{n,}:前面字符或组的数量至少n个

{n,m}:前面字符或组数量至少n个,最多m个
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式