正则表达式,不管在网站前端开发还是后端开发中都是非常有用的,因为他涉及到字符处理,如替换字符,找到符合条件的进行替换,很多地方不得不用。
作为一个前端开发工程师,熟悉JS正则表达式规则是必修课。
正则表达式描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。
\,将下一个字符标记为一个特殊字符、或一个原义字符、或一个向后引用、或一个八进制转义符。例如,n匹配字符n。\n匹配一个换行符。串行\\匹配\而\(则匹配(。
^,匹配输入字符串的开始位置。如果设置了RegExp对象的Multiline属性,^也匹配\n或\r之后的位置。
$,匹配输入字符串的结束位置。如果设置了RegExp对象的Multiline属性,$也匹配\n或\r之前的位置。
*,匹配前面的子表达式零次或多次。例如,zo*能匹配z以及zoo。*等价于{0,}。
+,匹配前面的子表达式一次或多次。例如,zo+能匹配zo以及zoo,但不能匹配z。+等价于{1,}。
?,匹配前面的子表达式零次或一次。例如,do(es)?可以匹配does或does中的do。?等价于{0,1}。
{n},n是一个非负整数。匹配确定的n次。例如,o{2}不能匹配Bob中的o,但是能匹配food中的两个o。
{n,},n是一个非负整数。至少匹配n次。例如,o{2,}不能匹配Bob中的o,但能匹配foooood中的所有o。o{1,}等价于o+。o{0,}则等价于o*。
{n,m},m和n均为非负整数,其中n=m。最少匹配n次且最多匹配m次。例如,o{1,3}将匹配fooooood中的前三个o。o{0,1}等价于o?。请注意在逗号和两个数之间不能有空格。
?,当该字符紧跟在任何一个其他限制符(*,+,?,{n},{n,},{n,m})后面时,匹配模式是非贪婪的。非贪婪模式尽可能少的匹配所搜索的字符串,而默认的贪婪模式则尽可能多的匹配所搜索的字符串。例如,对于字符串oooo,o+?将匹配单个o,而o+将匹配所有o。
.,匹配除\n之外的任何单个字符。要匹配包括\n在内的任何字符,请使用像(.|\n)的模式。
中企动力擅长网页设计、前端开发和thinkphp后台程序开发,欢迎有需求的客户咨询我们。