2013-06-11 220 views
0

我想用正则表达式选择一个子字符串,并且我正在绕圈。我需要在第一个“_”之前选择所有内容。正则表达式子字符串

exampale网址 - GI_2013_JUNE_10_VOL3_LASTCHANCE

所以结果进出口寻找从以上网址将是 “GI”。第一个“_”之前的文本可能会有所不同。

任何帮助将非常apprecited

+1

为什么不只是使用子字符串函数? – Achrome

回答

0
^[^_]* 

...就是你要找的表达。

它基本上说:从字符串的开始处选择不是下划线的所有内容。

http://regexr.com?356in

+0

虽然可以匹配空字符串。可能还是很多不符合OP的要求... – fge

+0

好点。 @ user2335923如果字符串不包含下划线,则如果要匹配整个字符串,则使用'^ [^ _] *';如果不匹配任何内容,则使用'^ [^ _] +'。这是一个更新的正则表达式示例:http://regexr.com?356it –

+0

Ihad稍微调整它,但为我工作的代码是([^ _] +)。* – user2335923

1

正则表达式是:

^[^_]+ 

,并抓住了整个正则表达式匹配。但正如评论所言,使用子字符串函数更有效率!

+0

这必须是正则表达式,因为它的网络分析看着URl的工具 – user2335923

+0

我真的没有看到这种关系? – fge