Regex 如何用正则表达式替换克服替换字符串错误

Regex 如何用正则表达式替换克服替换字符串错误,regex,vb.net,Regex,Vb.net,下面是我的代码 Dim ATT As String = "Hi Sample $1$ Text" Dim newText As String = "<ss>Hello How Are you</ss>" newText = Regex.Replace(newText, "<ss>(.*?)</ss>", ATT, RegexOptions.IgnoreCase) Dim ATT As String=“Hi Sample$1$Text” Dim n

下面是我的代码

Dim ATT As String = "Hi Sample $1$ Text"
Dim newText As String = "<ss>Hello How Are you</ss>"
newText = Regex.Replace(newText, "<ss>(.*?)</ss>", ATT, RegexOptions.IgnoreCase)
Dim ATT As String=“Hi Sample$1$Text”
Dim newText As String=“你好”
newText=Regex.Replace(newText,(.*),ATT,RegexOptions.IgnoreCase)
上述代码将ATT变量中的字符串内容($1$)视为Regex值,并将其替换为newText变量,如何克服此问题,请指导

有没有像下面提到的perl中那样的东西可以克服这个问题

$_=~ s/<ss>(.*?)</ss>/\Q$ATT\E/g;
$\u=~ s/(.*)/\Q$ATT\E/g;
您可以选择替换字符串中的
$
字符:

Dim ATT As String = "Hi Sample $1$ Text"
ATT = ATT.Replace("$", "$$")
Dim newText As String = "<ss>Hello How Are you</ss>"
newText = Regex.Replace(newText, "<ss>(.*?)</ss>", ATT, RegexOptions.IgnoreCase)
Dim ATT As String=“Hi Sample$1$Text”
附件=附件替换(“$”,“$”)
Dim newText As String=“你好”
newText=Regex.Replace(newText,(.*),ATT,RegexOptions.IgnoreCase)
或使用lambda进行更换:

Dim ATT As String = "Hi Sample $1$ Text"
Dim newText As String = "<ss>Hello How Are you</ss>"
newText = Regex.Replace(newText, "<ss>(.*?)</ss>", Function(m) ATT, RegexOptions.IgnoreCase)
Dim ATT As String=“Hi Sample$1$Text”
Dim newText As String=“你好”
newText=Regex.Replace(newText,(.*),函数(m)ATT,RegexOptions.IgnoreCase)

这是一个庞大的编码,有很多我提到的变量,有没有一种全局性的方法,比如我在Perl中发布的代码??函数(M):-)在哪里。。。也许我的语法错了,我不是VB用户;)这不是我期望的解决方案,我已经知道用它来替换$并使用它,但我有100个变量,比如ATT,不能替换和还原所有这些东西。所以不要更改
ATT
,这样做:
Regex.replace(newText,(.*),ATT.replace($,“$”),RegexOptions.IgnoreCase)