我正在尝试创建一个动态正则表达式来选择基于段或整个 URL 的 URL。
例如,我需要得到var.match(/http:\/\/www.something.com\/something/)
match()
需要转换里面的文本,以便\
在它们前面有特殊字符,例如"\/"
。我找不到将 URL 转换为执行此操作的函数?有吗?
如果不是,哪些字符需要\
在前面?
我正在尝试创建一个动态正则表达式来选择基于段或整个 URL 的 URL。
例如,我需要得到var.match(/http:\/\/www.something.com\/something/)
match()
需要转换里面的文本,以便\
在它们前面有特殊字符,例如"\/"
。我找不到将 URL 转换为执行此操作的函数?有吗?
如果不是,哪些字符需要\
在前面?
我在生成动态正则表达式时使用它来转义字符串:
var specials = /[*.+?|^$()\[\]{}\\]/g;
var url_re = RegExp(url.replace(specials, "\\$&"));
( ) [ ] ? * ^ $ \ . + |
在您的情况下,/
因为您将其用作匹配中的分隔符。
更多信息主要是为了抢先发表评论和投票:我真的不知道-
作为一个特殊角色来自哪里。它只有在字符类括号内[
并且]
您已经转义时才特别。如果您想包含有时特殊的字符(OP 没有),这些字符也将包含前瞻/后视字符,其中包括=
和.<
>