如何在正则表达式中的角色之前停止匹配

时间:2015-06-11 17:23:43

标签: regex

href="assisteradmin/viewassisterinformation?assisterId=5WJwXk0P1SKR9tlgHs5XuQ">

我正在使用regexp (assisterId=(.*?")),它将输出作为

 assisterId=5WJwXk0P1SKR9tlgHs5XuQ"

我如何才能获得"之前的比赛,但不包括'"' ..即在'''字符之前匹配?

5WJwXk0P1SKR9tlgHs5XuQ值不断变化..因此无法检查'Q',但需要检查结果,直到结果中的“{”除去"

2 个答案:

答案 0 :(得分:2)

使用否定的char类。

assisterId=([^"]*)

[^"]*匹配任何字符,但不匹配双引号。

使用先行断言。

assisterId=(.*?)(?=")

Lookarounds不会消耗任何角色。上面的前瞻断言,匹配必须后跟双引号。

答案 1 :(得分:1)

您可以使用以下内容:

(assisterId=([^"]*))

说明:

  • [^"]*(否定的字符类)匹配不是"的所有内容..所以一旦遇到"
  • 就会停止

请参阅DEMO