REGEX在第二个下划线之前获取所有文本,包括第二个下划线

时间:2013-12-12 15:20:37

标签: regex

所以我有这样的字符串:

GRF_STHB_010_00  
ABC_AB9_004_01
BGH_NP2_002_03
AG2_BVT_007_010

第一个下划线之前的文本可以是字母或数字的任何组合。

第二个下划线之前的文本也可以是任何字母或数字组合。

我希望能够在第二个下划线之前抓取整个字符串,包括第二个下划线。

我现在想出来了:

^([^\d]*)

它适用于第一个,并找到:

GRF_STHB_

但是对于其他两个它停在一个它找到的数字:

ABC_AB
BGH_NP
AG

我需要在REGEXP中使用它,因为它包含在用于抓取数据的电子表格中。

如何调整它以使其与数字一起使用并产生以下结果:

GRF_STHB_
ABC_AB9_
BGH_NP2_
AG2_BVT_

以下是可以提供帮助的任何人的快速测试人员:

regexpal.com 谢谢!

3 个答案:

答案 0 :(得分:3)

您可以使用此正则表达式:

^([^_]*_){2}

在线演示:http://regex101.com/r/cX7hL7

答案 1 :(得分:1)

您可以使用:

^[^_]*_[^_]*_

答案 2 :(得分:0)

您可以使用此正则表达式:

^([^_]*_[^_]*)_.*$

Demo