匹配一个正则expression式的正斜杠

我没有太多的JavaScript经验,但我试图创build一个标签系统,而不是使用@# ,将使用/

 var start = /#/ig; // @ Match var word = /#(\w+)/ig; //@abc Match 

我怎么能使用/而不是# 。 我试着做var slash = '/'并添加+ slash + ,但失败了。

你可以这样逃避

 /\//ig; // Matches / 

或者只是使用indexOf

 if(str.indexOf("/") > -1) 

您需要使用\来转义/

 /\//ig // matches / 

在正则expression式中,“/”是需要转义的特殊字符(通过在\之前放置\来标记,从而否定它可能提供的任何专门function)。

这是你需要的:

 var word = /\/(\w+)/ig; // /abc Match 

请阅读RegEx特殊字符: http : //www.regular-expressions.info/characters.html

如果你想使用/你需要用一个\

 var word = /\/(\w+)/ig; 

我遇到了两个与上述相关的问题,提取由\/分隔的文本,并find一个适合两者的解决scheme,而不是使用new RegExp ,它需要在开始时使用\\\\ 。 这些调查结果在Chrome和IE11中。

正则expression式

 /\\(.*)\//g 

不起作用。 尽pipe存在转义性,我认为//被解释为评论的开始。 正则expression式(在我的情况下同样有效,虽然不是一般的)

 /\b/\\(.*)\/\b/g 

也不起作用。 我认为第二个/终止正则expression式,尽pipe转义字符。

对我来说什么是代表/作为\x2F ,它是/的hex表示。 我认为这比使用new RegExp更有效率和可以理解,但当然需要注释来识别hex代码。