对不起,我是正规表达的新手。我从互联网上搜索了这场比赛。但不知道匹配意义是什么。期待有人可以向我解释。非常感谢。
if (window.location.pathname.match(/^\/test\//i))
我知道window.location.pathname
将获取当前的URL路径,不包括域名。但是不知道匹配方法中该部分的含义是什么。
答案 0 :(得分:3)
/^\/test\//i
表示正则表达式(/.../
),以正斜杠(^
)开头(\/
),后跟单词test
,后跟正斜杠(\/
)对案例(i
)不敏感。
因此它会匹配/TEST/whatever-goes-here
但不是/this/test/url
答案 1 :(得分:2)
match()
使用正则表达式测试字符串。在这种情况下,正在测试location.pathname
以查看它是否以/test/
开头,不区分大小写。
例如,如果if
是以下任何一项,则会执行location.pathname
之后的语句:
/test/
/TEST/
/test/random
/TEST/foo
但不是这些中的任何一个:
/
/testing/
/foo
答案 2 :(得分:0)
JavaScript字符串上的match()
方法将搜索正则表达式和字符串之间的匹配项,并返回匹配项。如果match方法找不到匹配项,则返回null。如果找到匹配项,则匹配返回一个数组。
此方法位于字符串对象上,不是jQuery的一部分,而是JavaScript / EcmaScript的一部分。