博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
正则整理
阅读量:5963 次
发布时间:2019-06-19

本文共 1274 字,大约阅读时间需要 4 分钟。

一年没写过文章了,一年来对前端也有了更多的了解。正则表达式,通用于很多语言,使用正则可以少走很多弯路。

1、正则实际上就是一个字符串。

es6里面有一个拼接字符串的写法 是: `string${变量名字}`

let name = '测试'; hello_name = `hello ${name}`;

等同于

hello_name = 'hello' + name;

这个和正则的写法很类似

正则也是各种常量与变量的拼接

比如想匹配一个 'my age is 数字' 的 字符串 ,那么可以写成

/my age is (\d{1, 2})//my age is (\d{1, 2})/.test('my age is 12')  // true/my age is (\d{1, 2})/.test('my age are 12')  // false 这里 \d 表示 数字, {1, 2}表示前一位(也就是\d)的个数在1~2之间 不过类似于 {1, 2} 这样的的位数匹配符 是默认和他的前一位捆绑的 所以 ()可以省略      那么就是写成 /my age is \d{1, 2}/

但是如果你只需要‘my age is 数字’这句话,不需要像my age is 33456 hhhh ,有其他多余的内容

那么就需要一些限定符号

/^my age is \d{1, 2}$/ /^my age is \d{1, 2}$/.test('my age is 12') // true /^my age is \d{1, 2}$/.test('my age is 123') // false /^my age is \d{1, 2}/.test('my age is 123456') // true   这个没用$

^表示起始 $表示结尾

说明这句话是以m开头,以一到俩位数的年龄结尾

类似于 \d的符号 还有 很多 ,常用的有 \d \s \w 等,具体的表示含义可以参考文档

2、正则括号的使用。

正则中() {} [] 都会用到,没一个的含义都不一样

()多用于 合并

正则 默认 都是 相互独立比如  /ab{3}/ 那么他只会匹配3次b ,但是只匹配1次a如果写成 /(ab){3}/那么就会匹配3次 'ab'

[]多用于 筛选

比如 \d 实际上可以写成 [0123456789]正则会从[]的集合中去匹配,只要符合其中的一个,就算匹配成功/^[ab]c$/ 匹配 ac 和 bc 都会成功 ,但是匹配 abc 不会成功[]中可以在最前面加一个^表示取反比如 [^ab]表示匹配非 ab 的字符/[^ab]/.test('a')  //false/[^ab]/.test('x')  //true比如 [^\d] 可以表示 匹配 非数字(当然也可以写\D 来表示 匹配非数字)

{}多用于位数限定

{1} 表示限定 为 一个 {1, 2} 表示限定 为 1到2个

这些目前就是正则的最基本用法

如果有需要帮忙指导的可以下面留言。

转载地址:http://gqjax.baihongyu.com/

你可能感兴趣的文章
莫比乌斯反演学习记录(最菜的垃圾而浅薄基础的总结)
查看>>
OC--类和对象
查看>>
webgl像机世界
查看>>
微信浏览器打开 点击下载app 无需提示使用浏览器打开--代码分享
查看>>
Go:二分查找
查看>>
北风设计模式课程---外观模式(门面模式)
查看>>
php正则怎么使用(最全最细致)
查看>>
课后作业03-验证课件上的代码,并将所有的动手动脑或要求发表博客作业部分整理成一篇博客...
查看>>
leetcode -- Valid Parentheses
查看>>
C#的常见算法(面试)(转)
查看>>
MVC_学习笔记_2_Authorize
查看>>
pycharm修改hosts文件
查看>>
DSP模块之:EDMA
查看>>
如何做一名好的web安全工程师?
查看>>
百度编辑器UEditor常用设置函数
查看>>
js断点调试
查看>>
有穷自动机构造
查看>>
QQ在线状态的使用
查看>>
001-MySQL基础-MySQL概述
查看>>
与Spring BlazeDS Integration相比,更简单的实现来调用spring bean
查看>>