我有一个包含一些 id 的字符串,基本上是一个字符串中的 sql 表达式。我需要以更友好的方式将其呈现给用户,即。用数据库中的名称替换 id。问题是一些 id 是个位数,而另一些是 2 位数。因此,当我搜索和替换单个数字时,它也会替换部分2 位字符串。例如,如果原始字符串是:
id not in (2, 3, 4) and id > 22
当我执行搜索和替换时2
,数字2
和22
都被替换。
使用正则表达式我可以找到2
,但是当我替换它时(正则表达式基本上会查找我想要的数字以及一些可能的分隔符,例如空格,()
等)。是否可以替换此数字但保留这些分隔符?
这就是我现在所拥有的:
Regex.Replace(returnValue
, String.Format("[,( )]{0}[,( )]", number)
, replaceValue)