react-native使用正则表达式

1.正则表达式去除数字以外的其它字符

    let D = /\D/
    let newText = '234sdf78sdf2 sdfwer7'
    while (D.test(newText)) newText = newText.replace(D,'')
这里其实只用到了正则里面的一个“\D”,在正则语法里面“\d”表示所有数字,“\D”则表示除了数字的其它所有字符。

"\D" :表示除了数字的其它所有字符
那么为什么会用到while循环呢?
那就是因为在字符串中有多种不同的字符时使用 “newText.replace(D,'')”只会对字符串匹配一次,就会出现去除不全的情况,所以需要循环判断一下。
2.正则表达式每四们数字添加一个空格

    let newText = '12345678900987654321'
    let s = /(\d{4})(?=\d)/
    while (s.test(newText)) newText = newText.replace(s,'$1 ').trim()

正则语法:
"\d":表示所有数字
"{4}":表示前面表达式有四位
"$1":表示正则表达式中第一个括号所匹配的内容。注:"$1"后面有一个空格不是很明显要注意
"?=":前瞻,这里有一篇前瞻的文章帮助理解
"trim()":去除字符串头尾的空格
使用while循环的作用与1一样,只会对字符串进行一次匹配,所以使用循环。

你可能感兴趣的:(react-native使用正则表达式)