c#中的正则表达式来提取数据

时间:2014-09-10 05:48:08

标签: c# regex

我想从字符串中提取数字。我有两个字符串如下。

1_09-Sep-14#200

对于上面的字符串,我使用的是以下表达式但它没有正常工作,我想在1之后09-Sep-14然后200获得string S = "1_09-Sep-14#200"; foreach (Match m in Regex.Matches(S, "(?<=[_#])(\\d+)(?=[_#])?")) { string s = Convert.ToString(m.Groups[1]); }

1_4-11#100

我也希望将正则表达式用于此字符串。

{{1}}

1 个答案:

答案 0 :(得分:1)

(?<=[_#]|^)([0-9a-zA-Z-]*)(?=[_#]|$)

试试这个。

我已将^用于捕获_之前的第一个数字,$用于捕获#之后的最后一个数字。

参见演示。

http://regex101.com/r/nG1gU7/29