随手查阅的正则匹配笔记
发布时间:2020-12-14 06:37:44 所属栏目:百科 来源:网络整理
导读:常见需求如下: 如果你只需要获取字符串中的首个匹配项 var re = /quicks(brown).+?(jumps)/ig;var result = re.exec('The Quick Brown Fox Jumps Over The Lazy Dog');// 就算有 g 标识,通过 exec 也只能获取到首个匹配项// result[0]: Quick Brown Fox J
常见需求如下:
var re = /quicks(brown).+?(jumps)/ig; var result = re.exec('The Quick Brown Fox Jumps Over The Lazy Dog'); // 就算有 g 标识,通过 exec 也只能获取到首个匹配项 // result[0]: Quick Brown Fox Jumps
var re = /quicks(brown).+?(jumps)/ig; var result = re.exec('The Quick Brown Fox Jumps Over The Lazy Dog'); // index 1~n 就是组匹配到的结果(此处正则中有两个括号,则 n 为 2) // result[1]: Brown // result[2]: Jumps 关于
'mockid=272;其他说明文字……'.match(/mockid=(d+);/i) // ["mockid=272;","272",index: 0,input: "mockid=272;其他说明文字……"] // 如果加上 g 标识,就只能得到 ["mockid=272;"]
'GET/path/to/some/place'.match(/^(GET|POST|PUT|DELETE)/gi) // 输出:["GET"] 关于
// RegExp.prototype.test() var str = 'hello world!'; var result = /^hello/.test(str); console.log(result); // true 关于 // String.prototype.search() var str = "hey JudE"; var re = /[A-Z]/g; var re2 = /[.]/g; console.log(str.search(re)); // returns 4,which is the index of the first capital letter "J" console.log(str.search(re2)); // returns -1 cannot find '.' dot punctuation // 因此可以直接判断返回负值时匹配结果为 false 关于
function replacer(match,p1,p2,p3,offset,string) { // p1:([^d]*) p2:(d*) p3:([^w]*) // p1 非数字,p2 数字,p3 非文字 return [p1,p3].join(' - '); } var newString = 'abc12345#$*%'.replace(/([^d]*)(d*)([^w]*)/,replacer); console.log(newString); // abc - 12345 - #$*% 推荐正则工具:
非常好用的一个正则编写工具,我会点开左侧菜单栏里的
可视化查看正则表达式(复杂版),很直观,神器一枚
可视化查看正则表达式(简化版) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |