正则的简单应用

##正则
###正则的概念
####什么是正则

正则表达式(英语:Regular Expression,在代码中常简写为regex、regexp或RE)使用单个字符串来描述、匹配一系列符合某个句法规则的字符串搜索模式。

正则的作用

1)对表单域项目(用户名、密码、邮箱、qq号码、手机等等)进行验证

2)网络爬虫(一个网站到另一个网站的页面上去获取对方的相关信息)

3)内容替换、获取

前台的验证、正则处理满足条件的字符串(网络爬虫 Python编程)数据采集(大宗点评:商家评论 抓取) curl函数库:模拟http请求。

应用场景

手机号替换:替换前:14466665138 替换后 134****5678

敏感词替换:

原字符串:发发达中方规划导共产党

替换后:发发达xxx辅xxx地方规划导xxx

正则的创建
字面量创建
var reg = /hello/;
RegExp对象方法
test()方法

- 判断正则表达式是否匹配成功

- 成功返回true,失败返回false

	<script type="text/javascript">
	//创建字符串
	var str = '123456';

 	//var obj = new RegExp('123');
 	var obj = /123/;
	var ret =     obj.test(str);
	document.write(ret);
	</script>
exec方法

- 匹配符合正则表达式条件的数据

- 成功返回数组

- 失败返回null

<script type="text/javascript">
	//创建字符串
	var str = '12345123451234567';
	//创建正则表达式对象
	//var obj = new RegExp('12','g');
	 var obj = /12/g;
 
	//调用exec方法匹配数据(拓展,看一下效果)
	 document.write(obj.exec(str));
	    var row;
		while(row = obj.exec(str)) {
		document.write(row);
	}
正则的字符串调用函数(需要掌握)

在 JavaScript 中,正则表达式通常用于两个字符串方法 : search() 和 replace()。

search() 方法

语法:字符串对象.search(待查找的字符串|正则)

作用:用于搜索字符串中指定的元素

返回:返回符合条件的第一个元素下标,没找到返回-1
match()

语法:字符串对象.match(待匹配的字符串|正则表达式)

作用:匹配符合条件的内容

返回:返回一个数组
replace() 方法

语法:字符串对象.replace(待匹配的字符串|正则表达式,替换的内容)

作用:用于替换字符串中的数据

返回:返回新的字符串(替换后的字符串)

正则语法
正则字符类

匹配a-z任意一个字符, 正则:[a-z]

匹配A-Z任意一个字符, 正则:[A-Z]

匹配26个英文字母(大小写), 正则:[a-zA-Z]

匹配一个数字, 正则:[0-9]

匹配一个字符可以是数字、字母和下划线:[0-9a-zA-Z_]

匹配非数字,正则:[^0-9]

匹配非字母,正则:[^a-zA-Z]

取反: 如果需要取反在第一个“[”后面添加“^”符号即可

常用字符类

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

\D 匹配非数字,相当于[^0-9]

\w 匹配数字、字母、下划线,相当于:[0-9a-zA-Z_]

\W 匹配非数字、字母、下划线,相当于:[^0-9a-zA-Z_]

\s 匹配空白字符串(空格)

\S 匹配非空白字符串

. 匹配所有字符

重复字符

* 指重复0到多次

+ 指重复1到多次,至少出现一次 /a+/

? 指重复0到1次,最多一次

{n} 指匹配n次,如:{6} 匹配8次 /a{6}/

{n, m} 指匹配n到m次,如:{1,5} 匹配1~5次 /a{1,5}/

{n, } 指匹配至少n次,如:{3,} 匹配至少1次 /a{3,}/

常用定位符

^ 限定行首数据

$ 限定行尾数据

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值