繁体   English   中英

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

[英]extract word between 2nd underscore and 3rd underscore or space

我想提取第 2 个和第 3 个下划线( _ )之后的单词或第 2 个下划线和空格之间的单词。

我的样本数据是:

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

我已经有了这个_[^_]*_([^_]*)_我可以提取第一个两个结果。 如果有人可以帮助我提取第 3 和第 4 个结果

表示在第三个下划线或空格之间的正则表达式

你可以去

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

在 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]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM