正则表达式(/[^0-9]/g,'')中的"/g"是什么意思 ?????
要想限制输入数字的位数,应该在什么地方 加什么语句??????????????????????????????????
表达式加上参数g之后,表明可以进行全局匹配,注意这里“可以”的含义。对于表达式对象的exec方法,不加入g,则只返回第一个匹配,无论执行多少次均是如此。
如果加入g,则第一次执行也返回第一个匹配,再执行返回第二个匹配,依次类推。例如
var regx=/user/d/;
var str=“user18dsdfuser2dsfsd”;
var rs=regx.exec(str);//此时rs的值为{user1}
var rs2=regx.exec(str);//此时rs的值依然为{user1}
如果regx=/user/d/g;则rs的值为{user1},rs2的值为{user2}
通过这个例子说明:对于exec方法,表达式加入了g,并不是说执行exec方法就可以返回所有的匹配,而是说加入了g之后,我可以通过某种方式得到所有的匹配,这里的“方式”对于exec而言,就是依次执行这个方法即可。
对于表达式对象的test方法,加入g于不加上g没有什么区别。 对于String对象的match方法,不加入g,也只是返回第一个匹配。
一直执行match方法也总是返回第一个匹配,加入g,则一次返回所有的匹配(注意这与表达式对象的exec方法不同,对于exec而言,表达式即使加上了g,也不会一次返回所有的匹配)。
例如:
var regx=/user/d/;
var str=“user1sdfsffuser2dfsdf”;
var rs=str.match(regx);//此时rs的值为{user1}
var rs2=str.match(regx);//此时rs的值依然为{user1}
如果regx=/user/d/g,则rs的值为{user1,user2},rs2的值也为{user1,user2}
3,对于String对象的replace方法,表达式不加入g,则只替换第一个匹配,如果加入g,则替换所有匹配。(开头的三道测试题能很好的说明这一点) ,对于String对象的split方法,加上g与不加g是一样的,即:
var sep=/user/d/;
var array=“user1dfsfuser2dfsf”.split(sep);
则array的值为{dfsf, dfsf}
此时sep=/user/d/g,返回值是一样的。
对于String对象的search方法,加不加g也是一样的
扩展资料
正则表达中其他字符的表达方式如下:
1,\:将下一个字符标记符、或一个向后引用、或一个八进制转义符。例如,“\\n”匹\n。“\n”匹配换行符。序列“\\”匹配“\”而“\(”则匹配“(”。即相当于多种编程语言中都有的“转义字符”的概念。
2,^:匹配输入字行首。如果设置了RegExp对象的Multiline属性,^也匹配“\n”或“\r”之后的位置。
3,$:匹配输入行尾。如果设置了RegExp对象的Multiline属性,$也匹配“\n”或“\r”之前的位置。
4,*:匹配前面的子表达式任意次。例如,zo*能匹配“z”,也能匹配“zo”以及“zoo”。*等价于{0,}。
5,+:匹配前面的子表达式一次或多次(大于等于1次)。例如,“zo+”能匹配“zo”以及“zoo”,但不能匹配“z”。+等价于{1,}
6,{n,}:n是一个非负整数。至少匹配n次。例如,“o{2,}”不能匹配“Bob”中的“o”,但能匹配“foooood”中的所有o。“o{1,}”等价于“o+”。“o{0,}”则等价于“o*”。
7,(pattern):匹配pattern并获取这一匹配。所获取的匹配可以从产生的Matches集合得到,在VBScript中使用SubMatches集合,在JScript中则使用$0…$9属性。要匹配圆括号字符,请使用“\(”或“\)”。
8,x|y:匹配x或y。例如,“z|food”能匹配“z”或“food”(此处请谨慎)。“[zf]ood”则匹配“zood”或“food”。
9,[xyz]:字符集合。匹配所包含的任意一个字符。例如,“[abc]”可以匹配“plain”中的“a”。
10,[^xyz]:负值字符集合。匹配未包含的任意字符。例如,“[^abc]”可以匹配“plain”中的“plin”任一字符。
11,[a-z]:字符范围。匹配指定范围内的任意字符。例如,“[a-z]”可以匹配“a”到“z”范围内的任意小写字母字符。
12,[^a-z]:负值字符范围。匹配任何不在指定范围内的任意字符。例如,“[^a-z]”可以匹配任何不在“a”到“z”范围内的任意字符。
13,\B:匹配非单词边界。“er\B”能匹配“verb”中的“er”,但不能匹配“never”中的“er”。
14,\cx:匹配由x指明的控制字符。例如,\cM匹配一个Control-M或回车符。x的值必须为A-Z或a-z之一。否则,将c视为一个原义的“c”字符。
正则表达式加上参数g之后,表明可以进行全局匹配。此外对于不同的对象方法,/g的含义有所不同,下面给出简要介绍:
(1)对于表达式对象的exec方法,不加入g,则只返回第一个匹配;如果加入g,则第一次执行也返回第一个匹配,再执行返回第二个匹配,依次类推。对于exec方法,表达式加入了g,并不是说执行exec方法就可以返回所有的匹配,而是说加入了g之后,可以通过某种方式得到所有的匹配,这里的“方式”对于exec而言,就是依次执行这个方法即可。
(2)对于表达式对象的test方法,加入g于不加上g没有什么区别。
(3)对于String对象的match方法,不加入g,也只是返回第一个匹配,一直执行match方法也总是返回第一个匹配,加入g,则一次返回所有的匹配(注意这与表达式对象的exec方法不同,对于exec而言,表达式即使加上了g,也不会一次返回所有的匹配)。
(4)对于String对象的replace方法,表达式不加入g,则只替换第一个匹配,如果加入g,则替换所有匹配。
(5)对于String对象的split方法,加上g与不加g是一样的。
(6)对于String对象的search方法,加不加g也是一样的。
扩展材料:
1、正则表达式包括两部分:
① 定义正则表达式的规则;
② 正则表达式的模式(i/g/m);
2、声明正则表达式:
① 字面量声明:
var reg=/表达式规则/表达式模式;
eg: var reg= /white/g;
② 使用new关键字:
var reg=new RegExp("表达式规则","表达式模式");
eg: var reg=new RegExp("white","g");
3、正则表达式的常用模式:
① g:全局匹配。不加g默认为非全局匹配,只匹配第一个符合要求的字符串。
② i:忽略大小写。不加i,默认要求大小写不匹配;
③ m:多行匹配模式。不带m,则一个字符串只有一个开头,一个结尾;
带m后,如果字符串分为多行,则每行都有一个开头,一个结尾。
本回答被网友采纳/g 表示该表达式可以进行全局匹配。
不加入/g,则只返回第一个匹配,无论执行多少次均是如此,如果加入g,则第一次执行也返回第一个匹配,再执行返回第二个匹配,依次类推。相当于下图中的全局搜素。
/[^0-9]/g,这个正则表达式的意思是全局匹配非数字类型的字符。
扩展资料:
正则表达式描述了一种字符串匹配的模式,由三部分组成,字符类、数量限定符、位置限定符。
字符类:他们在模式中表示一个字符,但是取值范围是一类字符中的任意一个。常见的有:. 表示匹配任意一个字符。[]匹配括号中任意字符。- 在[]中使用表示范围。^ 括号内使用,表示匹配除括号中字符外的字符。
数量限定符:表示可以有一个或多个x字符。常见的有:?表示匹配零次或一次。+ 匹配一次或多次。* 匹配零次或多次。
位置限定符:描述各种字符类以及普通字符之间的位置关系。常用的有:^ 匹配行首位置。$匹配行末位置。
常用正则:1.网站URL:^((https|http|ftp|rtsp|mms)?:\/\/)[^\s]+
2.手机:0?(13|14|15|17|18|19)[0-9]{9}
3.email地址:\w[-\w.+]*@([A-Za-z0-9][-A-Za-z0-9]+\.)+[A-Za-z]{2,14}
4.邮政编码:\d{6}
参考资料来源:百度百科-正则表达式
本回答被网友采纳正则表达式(\/[^0-9]\/g,'')中的"\/g"是什么意思 ???
表达式加上参数g之后,表明可以进行全局匹配,注意这里“可以”的含义。对于表达式对象的exec方法,不加入g,则只返回第一个匹配,无论执行多少次均是如此。如果加入g,则第一次执行也返回第一个匹配,再执行返回第二个匹配,依次类推。例如 var regx=\/user\/d\/;var str=“user18dsdfuser2dsfsd”;va...
正则表达式中 \/g 和 \/id 是什么意思
\/g意思就是:global可选标志,带这个标志表示替换将针对行中每个匹配的串进行,否则则只替换行中第一个匹配串。如:we.fdffddfwe.加上\/g后,则2个we都会出来。
https:\/\/zhidao.baidu.com\/question\/205852143.html
1.\/[^0-9]\/g是正则表达式,这里加g是表示会替换字符串中所有出现和正则表达式模式匹配的字串。如过不加的话,会只替换出现的第一个匹配。比如:字符串 thisthisthat,用\/this\/正则去替换:"thisthisthat".replace(\/this\/,"that")结果是:thatthisthat \/\/只替换了第一个 但用\/this\/g去替换结果...
正则表达式问题
\/。。。\/g 表示全文匹配 \/[1-9][0-9]*\/g 表示匹配1-9的单个数字或者匹配1-9单个数字外加若干个0-9数字 如果你要匹配xxxx年xx月xx日 那么正确的匹配应该是 \\d{4}[\\S\\s]+?[01]?[0-9][\\S\\s]+?[0-3]?[0-9]
正则表达式\/[^0-9*#-]\/ig中的第一个\/什么意思?
这是JS中的正则表达式\/\/表示之间的就是正则表达式就像VB里的""一样,只是告诉电脑\/\/之间的是正则表达式后面的ig,i是表示区分大小写,g是全局模式如果不区分东西写,不开启全局,就不用写ig了\/[^0-9*#-]\/ig 区分大小写,全局模式\/[^0-9*#-]\/i 区分大小写,非全局模式\/[^0-9*#-]\/...
js中 \/[\\r]\/g 是什么意思?为什么是"[]"、"\/"
\/[\\r]\/g在js中是正则表达式对象,在两个“\/”之间的部分是表达式的主体,表示要匹配的字符串;“g”表示在整个字符串中搜索。所以这段代码中要匹配的字符串是“[\\r]”所代表的字符串,其中“[]”表示字符的可选范围。\/\/g是全局匹配 \/\/中间的内容表示:匹配以=开关,后面是0或多个空格,然后...
js正则表达式怎么取出个字符串中的所有数字,急急急
正则表达式有两种形式,一种是普通方式,一种是构造函数方式。普通方式:var reg=\/表达式\/附加参数表达式:一个字符串,代表了某种规则,其中可以使用某些特殊字符,来代表特殊的规则,后面会详细说明。附加参数:用来扩展表达式的含义,目前主要有三个参数:g:代表可以进行全局匹配。i:代表不区分大小写匹配...
请问正则表达式([^^]*?)是什么意思?
最后的“g”标志则表示正则表达式使用的global(全局)的状态。使用 global 标志表明在被查找的字符串中搜索操作将查找所有符合的项,而不仅仅是第一个。这也被称为全局匹配。【相关的标志还有i(ignoreCase,表示忽略大小写)、m(multiline,表示允许跨行)】然后我们再来看中间的主体部分:\\{\\{(.+?
正则表达式[!^0-9] 是什么意思?
意义:匹配除数字、字母外及下划线外的其它字符,等价于[^A-Za-z0-9_]。例如:\/W\/或者\/[^$A-Za-z0-9_]\/匹配"50%."中的’%’。字符n意义:这里的n是一个正整数。匹配一个正则表达式的最后一个子串的n的值(计数左圆括号)。例如:\/apple(,)sorange1\/匹配"apple, orange, cherry, peach."中的’apple,...
...正则表达式,如同这个表达式 value.replace(\/[^0-9_]\/g,'') ,这 ...
正则表达式这样写试试 把0-9改为A-Z