首页 > 解决方案 > 正则表达式获取数字和下划线C#之间的字符串

问题描述

我正在尝试制作一个正则表达式来获取某个数字和下划线之间的字符串,例如:

我有CP_01Ags_v5,所以我需要一个正则表达式来匹配Ags。另一个例子可能是CP_13Hgo_v5和 match Hgo

有什么想法?

标签: c#.netregex

解决方案


根据您描述的示例和匹配项。你想要一些类似的东西。

[0-9]+(.*)[_]

把它分解。正则表达式查找任何出现一次或多次的数字,然后匹配数字之后的所有内容,直到 [_] 下划线。

缺点是假设您提供的示例相似。如果你的例子是

CP_13Hgo_v5asdf_

然后它将匹配

Hgo_v5asdf

如果您有其他可能的发现,那么您需要此正则表达式的非贪婪版本。

[0-9]+(.*?)[_]

这将导致在此示例中找到两个组

CP_13Hgo_v5asdf_

将找到以下组:

Hgo

asdf

推荐阅读