Vb.net 字符串替换为正则表达式

Vb.net 字符串替换为正则表达式,vb.net,Vb.net,用变量like替换文本中的sting的正则表达式是什么 {MERGEFIELD fieldname}文本中带有 {DOCPROPERTY fieldname\*MERGEFORMAT} 字段名是可变的 dim str as string = "{DOCPROPERTY fieldname \* MERGEFORMAT}" str = Regex.Replace(str, Regex.Escape(fieldname), "this is what you want to replac

用变量like替换文本中的sting的正则表达式是什么

{MERGEFIELD fieldname}
文本中带有
{DOCPROPERTY fieldname\*MERGEFORMAT}

字段名是可变的

   dim str as string = "{DOCPROPERTY fieldname \* MERGEFORMAT}"
   str = Regex.Replace(str, Regex.Escape(fieldname), "this is what you want to replace", RegexOptions.IgnoreCase)
注意:您需要在字符串上添加一些要替换的标识符。比如说,
“{DOCPROPERTY[fieldname\u NAME]\*MERGEFORMAT}”
添加[]有助于正确识别。下面是一个例子

   dim str as string = "Welcome, [name]"
   str = Regex.Replace(str, Regex.Escape("[name]"), "Jeff", RegexOptions.IgnoreCase)

我将首先提取字段名,然后格式化新字符串:

Dim input = "{MERGEFIELD somefieldname}"
Dim fieldName = Regex.Match(input, "(?<=MERGEFIELD )\w+").Value
Dim newString = String.Format("{{DOCPROPERTY {0} \* MERGEFORMAT}}", fieldName)
'newString value is "{DOCPROPERTY somefieldname \* MERGEFORMAT}"
Dim input=“{MERGEFIELD somefieldname}”

Dim fieldName=Regex.Match(input,“(?这不是很清楚…你能不能用?String.Replace将是更明显的答案。如果你能提供更多的示例,你会得到更多的帮助谢谢zzzzz,但我认为这对我不起作用,因为文本中的字段名总是不同的,比如{MERGEFIELD Company},{MERGEFIELD Tel},{MERGEFIELD Postcode}.等。我需要一个表达式来忽略开始({MERGEFIELD”)和结束(})部分之间的字符串部分。