正则表示式用于对字符串模式进行匹配及检查替换,是对字符串模式匹配的工具。
一 语法
正则表达式有两种写法
1.RegExp对象
var partten = new RegExp(pattern,modifiers);
2.表达式
var patt=/pattern/modifiers;
- pattern(模式)描述了表达式的模式
- pattern(修饰符)用于指定全局匹配/区分大小写的匹配和多行匹配
二 修饰符
- i 大小写不敏感
- g 全局匹配
- m 多行匹配
三 元字符
参考链接
https://developer.mozilla.org...
四 一些正则案例
1.匹配所有引号
let partten =/\"([^\"]*)\"/g; var str1='one "two three four" five "seven eight" nine'; console.log(str1.match(partten)[1]); //['"two three four"','"seven eight"'] var str2='"beep boop" whatever "tacos" eleven "eighty"'; console.log(str2.match(partten)[1]); //['"beep boop"','"tacos"','"eighty"'] var str='empty ""'; console.log(str.match(partten)[1]); //['""']
2.匹配一张名字为数字的 jpg 图片
let partten =/^([0-9]+).(jpe?g)$/;
console.log(partten.test(123.jpg
)) //true
console.log(partten.test(123.jepg
)) //true
console.log(partten.test(abc.jpeg
)) //false
console.log(partten.test(123
)) //false
3.正确的 split 字符串
function split(str){ return str.split(/\s*,\s*/); } split(`1,2,3`); //['1', '2', '3'] split(`4, 5, 6, 7`); //['4', '5', '6', '7'] split(`1337`); // ['1337'] split(`a,\nb,\nc,\nd`); //['a', 'b', 'c', 'd']
4.匹配末尾是.
function meta(str){ return /\.$/.test(str); } meta(`abc.`); //true !meta(`abc`); // true meta(`...`); //`...`
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。