提取第二个下划线和第三个下划线或空格之间的单词

时间:2017-03-17 09:28:56

标签: regex

我想在第二个&之后提取这个词。第三个下划线(_)或第二个下划线之间的单词空间。

我的样本数据是:

COL_POS_CJMA_CA_03.09.17
COL_DPU_CJER_CK_03.08.17
COL_POS_CJNE CA_03.09.2017
COL_DPU_CJEK CK_03.08.2017

我的结果应该是:

CJMA
CJER
CJNE
CJEK

我已经拥有此_[^_]*_([^_]*)_ 我可以提取前两个结果。 如果任何人可以帮助我提取第三和第三第4个结果

在第3个下划线或空格

之间说的正则表达式

1 个答案:

答案 0 :(得分:4)

你可以去

^(?:[^_]+_){2}([^_ ]+)

a demo on regex101.com

<小时/> 细分,这说:

^         # beginning of string
(?:       # non-capturing group
    [^_]+ # not _, at least once
    _     # _
){2}      # repeat the group twice
([^_ ]+)  # capture characters not _ or spaces to group 1

...或者,按_拆分并将结果分析为数组,即result[2]