正则表达式的组成


正则表达式概念

正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串搜索模式

用某种模式去匹配一类字符串的公式

1.什么是正则表达式

正则表达式(regular expression),就是一个规则,用来匹配字符串中的字符

二、创建正则表达式

1.new 方式

let regExp3 = new RegExp('box', 'i');

let regExp4 = new RegExp('\\d'); // 反斜杠 \ 在字符串中代表转义,必须用双反斜杠

2.字面量方式

写在两个正斜杠之间

let regExp1 = /box/i; // 匹配一个0 - 9之间的数字

let regExp2 = /\d/; // 匹配 box 字符串,不区分大小写

3.修饰符

i :忽略大小写; g:全局匹配 ;


三、使用正则表达式

      1.正则表达式对象的方法

test() 测试字符串和正则表达式是否匹配,返回布尔值

exec() 测试字符串是否和正则表达式是否匹配,返回结果数组或null

正则表达式对象有两个方法test()和 exec()


2.字符串的方法

search(reg)返回匹配到的字符串下标,没有匹配到则返回-1

match(reg)以数组形式返回匹配到的字符串,没有匹配到则返回null

replace(reg,'content')按照正则表达式进行替换,返回一个字符串

split(reg)以正则表达式为分隔符对字符串进行分割,返回数组


四、元字符

\d 匹配一个数字等效于[0-9]

\D 匹配一个非数字等效于[^0-9]

\w 匹配数字、字母及下划线[0-9a-zA-Z_]

\W匹配非数字、字母及下划线  [^\w] 或 [^0-9a-zA-Z_]

\s 匹配任何空白字符:空格、制表符、换行

\S 匹配任何非空白字符

五、限定符


字符  描述

^       行首匹配

$       行尾匹配

*       匹配前面的子表达式零次或多次

+      匹配前面的子表达式一次或多次

?      匹配前面的子表达式零次或一次

.       匹配任意字符,除了换行

{n}    花括号:限定数量,匹配确定的n次

{n,}     至少匹配n次

{n,m}   最少匹配n次且最多匹配 m 次

[]        限定范围,如[0-9],[a-d] , [abc]() 分组| 或

六、示例

1.判断一个字符串是不是有数字组成

2.找出连续的多个数字

要求结果:["1", "23", "456", "7890"]

<script>    let str = 'abc1de23fg456hijk7890lmn';</script>

要求结果:[''<123>","<33>"]

<script>    let str = 'abc<123>fdfd<33>fff34fdf<>';</script>

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容