【发布时间】:2021-09-07 11:58:42
【问题描述】:
使用正则表达式,我试图只获取最后一个下划线之后的最后一个数字(只能是 2 或 3)。
我现在拥有的是获取数字和字符。 我需要切断字符,只得到数字[2-3]。
这是我的例子——我只需要在最后一个下划线之后得到 2。目前正在获取数字和字符
ABC_0000_DEFG_1I_23_45_HIJKL2.pdf
The output I want -- 2 (after HIJKL).
^.*_\K[^.]+
If I get rid of ^ with \d, d{2-3}, ... it still gets HIJKL.
【问题讨论】:
-
字符串模式 = @"\d";字符串输入=“ABC_0000_DEFG_1I_23_45_HIJKL2.pdf”;匹配匹配 = Regex.Match(输入, 模式, RegexOptions.RightToLeft);字符串结果 = match.Value;
-
模式不是静态的,它可以变化。这只是一个例子。
-
从右到左搜索模式得到第一位。