Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/469.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 正则表达式友好URL_Javascript_Regex - Fatal编程技术网

Javascript 正则表达式友好URL

Javascript 正则表达式友好URL,javascript,regex,Javascript,Regex,我试图创建一个动态正则表达式,根据一个段或整个URL来选择URL 例如,我需要获取var.match(/http:\/\/www.something.com\/something/) match()中的文本需要转换,以便特殊字符前面有\,例如“\/”。我找不到一个函数来转换URL来执行此操作?有吗 如果不是,哪些字符需要前面有\?()[]?*^$\.+|

我试图创建一个动态正则表达式,根据一个段或整个URL来选择URL

例如,我需要获取
var.match(/http:\/\/www.something.com\/something/)

match()
中的文本需要转换,以便特殊字符前面有
\
,例如
“\/”
。我找不到一个函数来转换URL来执行此操作?有吗

如果不是,哪些字符需要前面有
\

()[]?*^$\.+|/
,因为您在匹配中使用它作为分隔符


更多信息主要是为了抢先评论和否决票:我真的不知道作为一个特殊角色,
-
从哪里来。只有在您已经转义的字符类括号内
[
]
时,它才特别。如果您想包括有时特殊的字符(OP没有),也包括前向/后向字符,其中包括
=
,,我在生成动态正则表达式时使用它来转义字符串:

var specials = /[*.+?|^$()\[\]{}\\]/g;
var url_re = RegExp(url.replace(specials, "\\$&"));

因此,您正在寻找JavaScript正则表达式转义函数和/或JS正则表达式中有意义的字符?列表是@djechlin中的
[.?*+^$[\]\\(){}\124;-]
。这不是一个否决投票的理由(如果是你的话)。谢谢你,这正是我想要的for@minitech在JS中?我知道在grep中,他们做任何事情都必须在前面加上一个“\”,我认为这是他们没有做的白鹭。
j{1,5}
匹配
j
的1-5个实例。不,它不需要前面的
\
,至少在JavaScript中,或者在我使用过的任何其他语言中。。。您是否考虑对
{}
使用不同的用法?相同的用法。普通的老grep做了一件愚蠢的事,他们算是正常的,在前面加一个反斜杠给了他们特殊的意义。Perl可以做到这一点吗?我不记得了。我记得1)在Perl中有12个脏字符,2)它们都是非常基本的正则表达式结构,所以我列出了我发布的列表。