正则整顿

一年没写过文章了,一年来对前端也有了更多的相识。正则表达式,通用于许多言语,运用正则能够少走许多弯路。

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个



这些现在就是正则的最基本用法

假如有须要帮助指点的能够下面留言。

    原文作者:lackdata
    原文地址: https://segmentfault.com/a/1190000017976985
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞