正则表达式中美元符号的含义

时间:2015-09-13 01:32:25

标签: javascript regex node.js

你能帮助我在下面的正则表达式中使用$的用法吗?我不明白用法是什么?这只意味着字符串的结尾吗?

p.match(/^\.\.?($|\/)/)

3 个答案:

答案 0 :(得分:4)

让我们解构你的正则表达式(我为了简化而删除了用于转义字符的反斜杠,我们将在这里使用点和斜线作为文字)所以我们留下:

^..?($|/)

  • ^表示行的开头
  • .然后我们必须有一个点
  • .?然后我们可能有也可能没有第二个点
  • $|/最后,我们要么结束这一行($符号的作用),要么在/之后继续

括号用于返回变量中的内容。

您的正则表达式将检测以下字符串:

..
../
./
../anytext
./anytext

希望这会有所帮助。

答案 1 :(得分:0)

回答你的问题:是的,这个正则表达式中的$表示字符串的结尾。

以下部分:

($|\/)

表示字符串结尾或'/'.

就字符串匹配而言,此正则表达式匹配:

  • ..
  • 任何字符串都以'./'
  • 开头
  • 任何字符串以'../'
  • 开头

前两个字符串由于$匹配,最后两个模式由于/.

而匹配

答案 2 :(得分:-2)

这并不意味着什么特别的。

但是因为在标识符名称中允许使用$,所以许多Javascript库已经开始使用$作为" central"与它们的接口,或至少作为访问其功能的快捷方式。

例如,如果您正在使用jQuery并且您说$(" div"),则这是使用参数" div"调用$ function。当你说$ .post()时,它会在$ object上调用post方法(Javascript很好,因为函数是一流的对象)。