我正在使用替换功能来替换文件中的字符
sw.WriteLine(Regex.Replace(strLine, "\\", Chr(13)))
此代码工作正常,但现在我想要替换两次,我想要使用replace函数两次。像这样的东西,但它不起作用。谁能告诉我如何多次使用替换功能?
sw.WriteLine(Regex.Replace(strLine, "\\", Chr(13)).Replace(strLine, Chr(13), ""))
答案 0 :(得分:4)
你的第二个替换是使用String.Replace扩展,而不是Regex.Replace方法。
Regex.Replace函数返回一个字符串,而不是一个正则表达式,这就是你的第二个正则表达式调用无效的原因。对于多个Regex.Replace调用,您必须单独执行每个调用或修改替换语句。
您可能只需使用String.Replace函数:
sw.WriteLine(strLine.Replace("\\", Chr(13)).Replace(Chr(13), ""))
答案 1 :(得分:1)
sw.WriteLine(Regex.Replace(Regex.Replace(strLine, "\\", Chr(13)), Chr(13), "")
这里更加布局,所以你可以看到发生了什么:
Dim firstIteration = Regex.Replace(strLine, "\\", Chr(13))
Dim secondIteration = Regex.Replace(firstIteration, Chr(13), "")
sw.WriteLine(secondIteration)
答案 2 :(得分:0)
在字符串中替换回车符可能有以下几种方式:
str_souce = str_source.Replace(vbCrLf, "")
str_souce = str_source.Replace(chr(13) & chr(10), "")
str_souce = str_source.Replace(environment.newline, "")
如果以上都不起作用,请尝试以下方法。它甚至可以用于第三方软件
str_souce = str_source.Replace(vbCr, "").Replace(vbLf, " ")