Replace 替换
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
开发工具与关键技术:VS 正则和JavaScript
作者:袁志彤
撰写时间:2018-04-06
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
在我看来,正则是一个很强大也很复杂的一个工具,正则它可以很简单,也可以很复杂,有时候一条看似简短的正则我却看不懂,有时一条很长很长的正则却很简单。
首先,我们先来看一下正则的规则吧!
- 元字符
. 匹配除换行符以外的任意字符
\w 匹配数字、字母、下划线和汉字
\s 匹配空白符
\d 匹配数字
\b 匹配字符串的开始或结束
^ 匹配单词的开始
$ 匹配单词的结束
- 限定符
* 重复0次或更多次
+ 重复1次或更多次
? 重复0次或1次
{n} 重复n次
{n,} 重复n次或更多次
{n,m} 重复n到m次
- 零宽断言
(?=exp) 匹配exp前面的位置
(?<=exp) 匹配exp后面的位置
- 还有一些其他的
/ 转义字符
| 替换(这里的替换不是我们要说的替换)
[aeiou] 匹配文本中的aeiou
[^aeiou] 匹配文本中除了aeiou的其他字符
- 贪婪匹配与懒惰匹配
贪婪匹配是默认的,只要符合条件,它就会一直匹配下去,懒惰匹配就是尽可能少的匹配
*? 重复0次或更多次,尽可能少的匹配
+? 重复1次或更多次,尽可能少的匹配
?? 重复0次或1次,尽可能少的匹配
{n}? 重复n次,尽可能少的匹配
{n,}? 重复n次或更多次,尽可能少的匹配
{n,m}? 重复n到m次,尽可能少的匹配
上面的只是铺垫,接下来就是我说到的replace替换了,它是JavaScript中的string对象,也是需要用到正则的,这个方法可以限定文本框输入的东西,它的代码很简单,非常简单,在特殊的时候非常实用
这一句的意思是把除了0-9以外的字符全部替换成*,是真的替换成*哦,不是像输入密码时那样只起到遮掩作用
用空白替换效果最好了,但是不好演示,所以我用*,这样更好演示。
因为我感觉它很有用,所以我把它写下来,怕我以后忘了。