有没有更好的方法来替换字符串?
我很惊讶 Replace 不接受字符数组或字符串数组。我想我可以编写自己的扩展,但我很好奇是否有更好的内置方法来执行以下操作?注意最后一个 Replace 是一个字符串而不是一个字符。
myString.Replace(';', '\n').Replace(',', '\n').Replace('\r', '\n').Replace('\t', '\n').Replace(' ', '\n').Replace("\n\n", "\n");
您可以使用替换正则表达式。
s/[;,\t\r ]|[\n]{2}/\n/g
s/
[
]
/
在英语中,它是这样写的:
“搜索;或,或\t或\r或`(空格)或恰好两个顺序\n并将其替换为\n`”
;
,
\t
\r
`(空格)或恰好两个顺序
并将其替换为
在 C# 中,您可以执行以下操作:(导入后System.Text.RegularExpressions)
System.Text.RegularExpressions
Regex pattern = new Regex("[;,\t\r ]|[\n]{2}"); pattern.Replace(myString, "\n");