【发布时间】:2022-01-09 13:39:21
【问题描述】:
我有一个正则表达式可以用值@p 替换字符串中的数字,但我想用相同的@p1 替换相同的数字,然后用@p2 和@p3 等等。
这是示例字符串
23 44 56 83 23 83 103 6573 56
我当前的简单替换会返回这个
@p @p @p @p @p @p @p @p @p
我想要的是这个
@p1 @p2 @p3 @p4 @p1 @p4 @p5 @p6 @p3
所以相同的数字将返回相同的@p 数字。
我的正则表达式匹配字符串是这个 @"\b[0123456789]+\b"
所以目前我正在这样做
public static System.Text.RegularExpressions.Regex Reg_pass_numbers = new
System.Text.RegularExpressions.Regex(@"\b[0123456789]+\b");
StringHolder = Reg_pass_Hex.Replace(StringHolder, "@p");
StringHolder 保存我的输入字符串。
正则表达式可以帮助解决这个问题吗?
【问题讨论】:
-
看来您需要指定一个匹配评估器。
-
嗨,所以我可以保留一个匹配数组及其索引,然后在匹配评估器中使用索引。是这个意思吗?
-
不是数组,字典会更好