替换C#字符串中的多个字符
有替代字符串的更好方法吗?
令我惊讶的是,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`”
在C#中,您可以执行以下操作:(导入后System.Text.RegularExpressions
)
Regex pattern = new Regex("[;,\t\r ]|[\n]{2}");pattern.Replace(myString, "\n");
以上是 替换C#字符串中的多个字符 的全部内容, 来源链接: utcz.com/qa/425659.html