RegExp
十里顾情欢
这个作者很懒,什么都没留下…
展开
-
用正则实现时间格式化、获取URL地址的参数信息、大数字千分符处理
~function(){ <!-- formatTime:时间字符串的格式化处理 @params template:[string] 我们最后期望获取日期格式的模板 模板规则:{0}->年 {1~5}->月日时分秒 @return [string]格式化后的时间.原创 2020-11-11 18:20:20 · 183 阅读 · 0 评论 -
验证一个字符串中哪个字母出现的次数最多,多少次
<!-- 去重的方法 --> let str = 'zhugeliangdirenjie' let obj = {} [].forEach.call(str,char => { if(typeof obj[char] !== 'undefined'){ obj[char]++ return } obj[char] = 1 }) let max = 1,.原创 2020-11-11 18:18:17 · 108 阅读 · 0 评论 -
其它正则捕获的方法
1、test 也能捕获(本意是匹配)let str = '{0}年{1}月{2}日'let reg = /\{(\d+)\}/gconsole.log(reg.test(str)) // => trueconsole.log(RegExp.$1) // => '0'console.log(reg.test(str)) // => trueconsole.log(RegExp.$1) // => '1'console.log(reg.test(str)原创 2020-11-11 18:16:52 · 103 阅读 · 0 评论 -
正则捕获的贪婪性
let str = 'lalala123dadada123'// => 正则捕获的贪婪性:默认情况下,正则捕获的时候,是按照当前正则所匹配的最长结果来获取的let reg = /\d+/gconsole.log(str.match(reg)) // => ['123','123']// => 在量词元字符后面设置 ? 取消捕获时候的贪婪性(按照正则匹配的最短结果来获取)let str = 'lalala123dadada123'let reg = /\d+?/gconso原创 2020-11-11 18:15:45 · 103 阅读 · 0 评论 -
正则的分组捕获
// => 身份证号码let str = '123456198010101931'let reg = /^(\d{6})(\d{4})(\d{2})(\d{2})\d{2}(\d)(?:\d|X)$/console.log(reg.exec(str))console.log(str.match(reg))// => ["123456198010101931", "123456", "1980", "10", "10", "3", "1", index: 0, input: "12345原创 2020-11-11 18:00:53 · 463 阅读 · 0 评论 -
正则的捕获
实现正则捕获的方法正则 RegExp.prototype 上的方法 1.exec 2.test字符串 String.prototype 上支持正则表达式处理的方法 1.replace 2.match 3.splite ....../** 实现正则捕获的前提是:当前正则要和字符串匹配,如果不匹配捕获的结果是null*/let str = 'xiaofei123xiaodan456'let reg = /\d+/console.log(reg.原创 2020-11-11 17:55:48 · 447 阅读 · 0 评论 -
常用的正则表达式
1、验证是否为有效数字/** 规则分析* 1、可能出现 + - 号,也可能不出现 [+-]?* 2、一位数0-9都可以,多位数不能是0 (\d|([1-9]\d+))* 3、小数部分可能有也可能没有,一旦有后面必须有小数点+数字 (\.\d+)?*/let reg = /^[+-]?(\d|([1-9]\d+))(\.\d+)?$/2、验证密码// => 数字、字母、下划线 6~16位let reg = /^\w{6,16}$/3、验证真实姓名 1.汉字 /^[\原创 2020-11-11 17:52:54 · 150 阅读 · 0 评论 -
常用元字符的详细解析
元字符详细解析^ $let reg = /^\d/ 以数字开头let reg = /\d$/ 以数字结尾^ $两个都不加:字符串中包含符合规则的内容即可let reg = /\d+/^ $两个都加:字符串只能是和规则一致的内容let reg = /^\d+$/\(可以把有意义的转换成无意义的 也可把无意义的转换成有意义的)基于转义字符,让其只能代表小数点let reg = /^2\.3$/把特殊的符号转换为普通的符号let reg = /^\\d$/x|ylet reg =原创 2020-11-11 17:39:34 · 666 阅读 · 0 评论 -
初识正则
RegExp用来处理字符串的规则1、只能处理字符串2、它是一个规则:可以验证字符串是否符合某个规则(test),也可以把字符串中符合规则的内容捕获到(exec/match…)编写正则表达式创建方式有两种1、字面量创建方式(两个斜杠之间包起来的,都是用来描述规则的元字符)let reg1 = /\d+/2、构造函数模式创建 两个参数: 1.元字符字符串 2.修饰符字符串let reg2 = new RegExp("\\d+")正则表达式由两部分组成1、元字符2、修饰符常用的元字符原创 2020-11-11 17:27:50 · 91 阅读 · 0 评论