搜索所有以$开头的单词('或用$("但在此之后不是'#'或'。'

时间:2014-11-04 10:43:55

标签: regex visual-studio-2013

使用正则表达式查找,在Visal Studio搜索中: 所有以$开头的单词('或以$("但在此之后不是'#'或'。'

所以它不应该找到:

  • $('#ID1&#39)
  • $('的.class&#39)
  • $("的.class&#34)

但它应该找到:

  • $(' DIV&#39)
  • $("跨度&#34)

我试试这个。但不工作:

   $/(['"][^#/.].*

2 个答案:

答案 0 :(得分:1)

使用如下所示的外观,

(?<=\s|^)\$\(['"](?![#.])\S+

OR

(?<=\s|^)\$\(['"](?![#.])[^()]*\)

OR

(?<=\s|^)\$\((['"])(?![#.])(?:(?!\1).)*\1\)

这不符合$("foo')

等错误格式

DEMO

答案 1 :(得分:1)

\$\(((?!#|\.).)*\)

这应该适合你的事业。

在你的正则表达式中你需要

1)通过$逃离\$ 2)量化你的角色类。即。 [^#/.]*而非[^#/.].*只检查("之后的第一个字符,然后允许#.

所以你的正则表达式将是

\$\(['"][^#.]*

您也不需要在charcter类中转义.

参见演示。

http://regex101.com/r/sU3fA2/54