正则表达式将匹配每一行的第一个案例。

时间:2014-07-29 16:09:02

标签: regex sublimetext2

我有以下正则表达式:

.*?,

以下是我正在使用的一些数据:

"bagel-mssql-iscsi.private.hostname.ca","3636634643","8.8.8.8"
"cecs-admin.prt.hostname.ca","3636634643","8.8.8.8"
"cecs-admin2.prt.hostname.ca","3636634643","8.8.8.8"

上述数据已根据原始数据进行审查。

我想要匹配:

"bagel-mssql-iscsi.private.hostname.ca",
"cecs-admin.prt.hostname.ca",
"cecs-admin2.prt.hostname.ca",

问题是我的正则表达式也匹配主机名后的数值。我该怎么办才能匹配每一行的第一次出现。或者可以使用这种类型数据的替代方法也可以。

4 个答案:

答案 0 :(得分:2)

你的正则表达式是,

^".*?",

DEMO

<强>解释

  • ^断言我们刚开始。
  • "双字引号。
  • .*?任何字符的不情愿匹配为零次或多次。
  • ",文字"后跟逗号。

答案 1 :(得分:1)

您需要锚定到该行的开头:

^.*?,

答案 2 :(得分:1)

使用仅在该行开头匹配的^锚点:

^.*?,

enter image description here

答案 3 :(得分:1)

下面的正则表达式过滤器可能有所帮助:

^\"(\S*?)\",

http://regex101.com/r/dZ3gH8/1