Javascript jQuery函数中的正则表达式语法
嗨,我一直在剖析我朋友的代码,我真的很困惑他使用的正则表达式是如何工作的。我真的很想了解他表达式的每个部分都在做什么 我记录函数并查看输出,但我想知道正则表达式如何收集结果 下面是函数中包含正则表达式的部分:Javascript jQuery函数中的正则表达式语法,javascript,jquery,regex,replace,Javascript,Jquery,Regex,Replace,嗨,我一直在剖析我朋友的代码,我真的很困惑他使用的正则表达式是如何工作的。我真的很想了解他表达式的每个部分都在做什么 我记录函数并查看输出,但我想知道正则表达式如何收集结果 下面是函数中包含正则表达式的部分: location.pathname.replace(/^\//, '') == this.pathname.replace(/^\//, '') 实际上,我只想知道正则表达式中每个字符的角色:(/^\/,“”)以下是对以下内容的快速解释: 对于函数,它接受字符串(location.pa
location.pathname.replace(/^\//, '') == this.pathname.replace(/^\//, '')
实际上,我只想知道正则表达式中每个字符的角色:
(/^\/,“”)
以下是对以下内容的快速解释:
对于函数,它接受字符串(
location.pathname
),并用第二个参数(字符串或返回字符串的回调函数)替换第一个参数(字符串或正则表达式)。这意味着位置开头的反斜杠。路径名将被替换为一个空白字符串。正则表达式需要在/
字符之间定义,^
表示“以开头”,并且需要转义/
,因此前面的\
。因此,这就是删除路径名Sweet中的第一个/
,这非常有帮助,谢谢Sam。我认为转义/混淆了meNo问题,regex中有很多。如果我们没有逃过/
,Javascript会认为我们碰到了结束分隔符(/^/
)。
/ # Starting delimiter (so Javascript knows this is a regular expression)
^ # Match the start of the string
\/ # Match a / (needs to be escaped with \)
/ # Ending delimiter