前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >正则表达式入门

正则表达式入门

作者头像
六月丶
发布2022-12-26 17:31:47
2210
发布2022-12-26 17:31:47
举报
文章被收录于专栏:六月-游戏开发六月-游戏开发

正则表达式(regular expression)

简介

什么是正则表达式?

正则表达式是用来处理字符串的一种规则,它只能处理字符串,既可以用于验证字符串是否符合某个规则,也可以用于把字符串中符合规则的内容捕获到(exec/match...)。 例如:

代码语言:javascript
复制
var reg=/\d+/;     //\d表示0-9中的任意数字,+表示出现次数为1次或以上
var str = "you are my faiend.";
var ret = reg.test(str);
console.log(ret);

因为字符串中不存在任何数字,所以输出结果为false。

代码语言:javascript
复制
var reg=/\d+/;
var str = "2019-07-15";
reg.exec(str);

因为2019都为数字,而-不是数字,所以reg规则从左往右遇到-时就不再继续捕获了,所以reg.exec(str)的捕获结果为2019。

编写

创建方式

字面量创建(用两个斜杠包起来的,都是用来描述规则的元字符) var reg = /\d+/;

构造函数创建(两个参数:元字符字符串,修饰符字符串) var reg = new RegExp("\\d+"); \\注意在字符串中特殊符号\需要进行转义

组成

正则表达式由两部分组成:

元字符

代码语言:javascript
复制
常用元字符
1.量词元字符:设置出现的次数
代码语言:javascript
复制
 0~n次
代码语言:javascript
复制
 1~n次

? 0或1次 {n} n次 {n,} n+次 {n,m} n~m次

2.特殊元字符:单个或者组合在一起代表特殊的含义 \ 转义字符(普通->特殊->普通) . 除了\n(换行符)以外的任意字符 ^ 以哪一个元字符作为开始 $ 以哪一个元字符作为结束 \n 换行符 \d 0~9之间的一个数字 \D 非0~9之间的数字(大写和小写的意思是相反的) \w 数字、字母、下划线中的任意一个字符 \s 一个空白字符(空格、制表符、换页符等) \t 一个制表符(一个TAB键:四个空格) x|y x或y中的一个字符 [xyz] x或y或z中的任意一个字符 [^xy] 除了x|y以外的任意字符 [a-z] 指定a-z这个范围中的任意字符,例:[0-9a-zA-Z_]等同于\w [^a-z] 除了a~z以外的任意字符 () 正则中的分组符号 (?:) 只匹配不捕获 (?=) 正向预查 (?!) 负向预查

3.普通元字符:代表本身含义的字符 /hello/ 匹配的字符串就是"hello"

代码语言:javascript
复制
 - **修饰符**
```js
常用修饰符:img*/
i(取自ignoreCase首字符)  忽略单词大小写匹配
m(multiline)             可以进行多行匹配
g(global)                全局匹配

例如:
/A/.test('banana') => false
/A/i.test('banana') => true

参考文献

https://www.bilibili.com/video/av73512539?from=search&seid=6709635910744811514

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019 年 12 月,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 正则表达式(regular expression)
  • 简介
    • 什么是正则表达式?
    • 编写
      • 创建方式
        • 组成
        • 参考文献
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档