上面这个网站可以用于在线检测JS的正则表达式语法
除了熟知的几个固定字符表示位置:
^ : Match the beginning of the string and, in multiline searches, the beginning of a line.
$ : Match the end of the string and, in multiline searches, the end of a line.
\b:
Match a word boundary. That is, match the position between a \w character and a \W character or between a \w character and the beginning or end of a string. (Note, however, that [\b] matches backspace.)
\B: Match a position that is not a word boundary.
还有的就是使用正则表达式来确定要匹配的位置,也叫做Zero-Width Test(零宽断言)
(?=p) :
A positive lookahead assertion. Require that the following characters match the pattern p, but do not include those characters in the match.
(?!p) :
A negative lookahead assertion. Require that the following characters do not match the pattern p.
对于(?=p)和(?!p)的使用举一个例子:
要在url(skins/default/images/index/default.png)中匹配"/default/"中的"default",而不匹配"/default.png"中的"default"?
正则表达式: (?!\/)default(?=\/)
其中(?!\/)表示以"/"开头,(?=\/)表示以"/"结尾
您可能感兴趣的文章:正则表达式教程之重复匹配详解正则表达式教程之匹配一组字符详解正则表达式教程之匹配单个字符详解javascript正则表达式模糊匹配IP地址功能示例js正则表达式最长匹配(贪婪匹配)和最短匹配(懒惰匹配)用法分析Java 正则表达式匹配模式(贪婪型、勉强型、占有型)正则表达式惰性匹配模式(?)正则表达式匹配IP的表达式(推荐)js正则表达式惰性匹配和贪婪匹配用法分析正则表达式匹配任意字符(包括换行符)的写法正则表达式匹配不包含某些字符串的技巧正则表达式教程之位置匹配详解