我有以下正则表达式:
var re = new RegExp("(^|\\s)" + classname + "(\\s|$)");
我理解 \ s 是一个空白字符;插入符号表示“以...开头”。我不明白的是这里的管道特征......
上面的表达如何翻译成英文?
此致
答案 0 :(得分:2)
表达式(^|\s)
是alternation。它的意思是“字符串的开头或空白字符”。类似地,(\s|$)
表示“字符串的结尾或空白字符”。
这种正则表达式对于在空格分隔列表中查找单词很有用,其中开头或结尾没有空格。
答案 1 :(得分:1)
javascript正则表达式中的|
符号表示“or
”。
您可以在此处查看有用的列表:https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/RegExp#Special_characters_in_regular_expressions这是在精彩的javascript regex测试版网站上列出的 regexpal.com
答案 2 :(得分:1)
|
表示左右 -
匹配行的开头(^)或空格字符
匹配
的值classname
变量匹配空白字符或行尾($)