查看: 18|回复: 0

[沪1805] 正则


7 天前 | [复制链接]

1

主题

2

帖子

7

积分

菜鸟

Rank: 1

发表于 7 天前 | 显示全部楼层 |阅读模式
字符串.replace(oldstr,newstr)函数和字符串.math(正则)函数
可以利用此函数,讲老字符串表示成正则表达式,对字符串进行替换
如:字符串中的abc替换成“哈哈”,如果正则后面没有g,则只替换一个,如果没有i,则大写不会替换
var str="abc123abc456abbcABCefaacbcdbcabc";
var reg=/abc/g;
console.log(str.replace(reg,"哈哈"));
字符串math函数的功能:提取所有的想要的东西
返回一个数组,包含所有符合条件的字符

\d 匹配所有的数字
var reg=/\d/g;
console.log(str.match(reg))  //打印字符串中所有的数字
+  若干,量词,表示多少个都可以,至少1个,无上限
var reg=/\d+/g;
console.log(str.math(reg))  //打印字符串中所有的数字,连续
| 或,类似于js中的||
var reg=/abc|bbc|cbc|dbc/g;
console.log(str.math(reg));  //打印字符串中的abc,bbc,cbc,dbc
var reg=/[a-c]bc/g
[ ] 中元符
var reg=/[a-z]/  //匹配所有字母
【0-9】==\d;
^ 排除(除了)
var reg=/[^0-9]/  //表示除了数字之外所有
.   代表所有,不建议使用
var reg=/<.+>/g
console.log(str.replace(reg,""))  //过滤,表示尖括号里面的东西不要,但是?
正则的贪婪定律:
var reg=/<[^<>]+/g;
console,log(str.replace(reg,""))  //表示尖括号里面的对象不要,真
转义字符:
\d  ——[0-9]      数字
\w  ——[a-z0-9_]   数字,字母,下划线
\s  ——空白字符

\D  ——[^0-9]   非数字
\w  ——[^a-z0-9_]   非数字,字母,下划线
\S  ——  非空白字符

量词:限字符,可以指定正则表达式的一个给定组,必须要出现多少次才能满足匹配
*  匹配前面的子表达式零次或多次
+  匹配前面的子表达式至少一次或多次
?  匹配前面的子表达式是零次或一次
{n} 匹配确认n次
{n,} 至少匹配n次
{n,m} 至少匹配n次,最多匹配m次
注:在限定符后紧跟?,则由贪婪匹配变成非贪婪匹配




您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

最新活动

  • 武汉H5-1805开班啦......

千锋教育公众号

订阅|小黑屋|手机版|千锋教育论坛 ( 京ICP备12003911号-3

GMT+8, 18-7-19 09:44 , Processed in 0.618099 second(s), 37 queries .

Powered by Discuz! X3.2

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表