正则相关
简单理解:就是以浏览器可以识别的一种方式去分析对应数据是否符合要求

(1)字符查找,search类似于indexOf,没有则返回-1

(2)字符串截取substring

(3)返回字符串某一位charAt

(4)字符串截取切分split

【缘由/优势】
需求:找出字符串中所有数字
(1)普通原始字符串操作

(2)正则

【定义】



(1)邮箱规则

(2)正则两种写法

perl为一门比较老版的编程语言,现在应用不太广泛,该语言首次提出正则概念
(3)search字符串搜索
RegExp为Reg Expression正则表达式简称


(4)search参数---字符串忽略大小写


(5)match匹配
需求:找到第一个出现的数字???

这里需要用到转义\

之前的search只能找到相应字符位置,并不能提取出来,这里便需要用到match

案例:

问题:此时只会获取到3,第一个数字... ...
(6)match参数---g全局匹配


问题:输出结果为分隔切片后的数据... ...
分析:因为/\d/只要了一个数字... ...,验证如下


如果3位,则只会输出656
(7)match参数---量词



(8)replace替换

需求:将所有a变为0



问题:这里只把第一个变为0... ...
接下来结合正则


会发现还是无效... ...此时正则里参数--全局匹配g加入即可


(9)replace替换案例---敏感词过滤
1、功能分析


点击过滤后在另一个输入域里显示过滤好的
2、编写脚本
① 获取

②点击绑定

③正则
接下来考虑re正则即可
编写敏感词

测试

④问题。此时发现只替换了第一个,原因:缺少全局匹配参数g


(10)基本组成部分---元字符(开发通常称之为方括号)


1、任意字符


2、范围字符



3、排除^

除了字母都可以,即排除字母
4、混合使用

排除英文字母和数字
(11)案例:模拟小说采集器,过滤HTML标签

1、布局

需求:原始HTML转换为纯文本

去除HTML标签
2、编写脚本
① 获取及大概思路

转义字符:.代表任意
②分析正则re

测试:

问题:转化成了空行... ...
分析:正则天生具备一个特性“贪婪”

正则将整个过滤了... ...
分析:不能出现任意字符,不能包含尖括号

新规则:

验证如下:

(12)转义字符

space空格
三个孪生兄弟

(13)量词

1、{n}电话

2、{n,m}QQ号

3、{n,}

4、?


区号可有可无

完整如下

5、*

(14)量词*注意
少用*


这里*理解为0次或更多次,那么字母或者空格地方可理解为0个数字
(15)量词练习


1、静态布局

2、脚本

3、正则翻译

4、测试

5、问题

合法邮箱前加些其他数据,发现任然合法
6、分析
test特性:部分符合要求,则返回true

行首和行位优化限制

.

浙公网安备 33010602011771号