0.判断特定字符串
要检验某一字符串是否符合特定的格式,最方便的方式就是正则表达式:
<!-- 判断变量是否符合命名规则,v是要进行判断的变量名 -->
const value = /[a-zA-Z\_\$][0-9a-zA-Z\_\$]*/;
value.test(v)
- test
>>> var value=/[a-zA-Z\_\$][0-9a-zA-Z\_\$]*/;
>>> value.test('v')
// true
1.切割字符串
在读取用户的输入的多个数据时,数据间的分隔符可能是多种多样的,有的人用一个空格,有个人用多个空格,有个人用逗号顿号分号等,而我们读取的是一整个的字符串,如何把这个字符串拆分为一个一个的数据项呢,此时正则就可以上场了
const reg=/[\s\,\、\。\,]+/
const data=dataInput.split(reg)
- test
>>> var reeg=/[\s\,\、\。\,]+/
>>> dataInput= "A man, a plan, a canal: Panama"
// A man, a plan, a canal: Panama'
>>> dataInput.split(reeg)
// ['A', 'man', 'a', 'plan', 'a', 'canal:', 'Panama']
这样写,程序的容错性就会明显提升很多
2.提取字符串信息
使用exec方法最终得到的是一个数组,里面存放字符串中与正则表达式中匹配的内容,我们可以通过这种方法便捷的提取字符串中的内容
const re = /^(\d+)(0*)$/;
re.exec('12300')
const reg = /^(\d+?)(0*)$/;
reg.exec('12300')
- test
>>> const re = /^(\d+)(0*)$/;
>>> re.exec('12300')
// ['12300', '12300', '', index: 0, input: '12300', groups: undefined]
>>> const reg = /^(\d+?)(0*)$/;
>>> reg.exec('12300')
// ['12300', '123', '00', index: 0, input: '12300', groups: undefined]
3.替换字符串
使用string对象的replace方法可以对字符串中的某一部分进行替换,使用正则字符串后,可以方便的选择字符串中的特定字符,如显示客户信息时要将字符串中的金额数字替换为"*"
str.replace(/\d+/,"*");
- test
>>>str = "$1"
// '$1'
>>>str.replace(/\d+/g,"*")
// '$*'