c# - C# 正则表达式转义和替换
问题描述
我有一个将文档发送到电子邮件的 API。我正在使用允许我指定电子邮件的参数。它要求换行符为 Json 格式 (\n)。我正在使用正则表达式来转义文本框文本,如下所示。
string JsonMessage = string.Format("{0}\n{1}", System.Text.RegularExpressions.Regex.Escape(this.txtMailMessage.Text), System.Text.RegularExpressions.Regex.Escape(this.txtMailMessage.Text));
JsonMessage = JsonMessage.Replace("\r", "");
Console.WriteLine(JsonMessage);
这是一个示例输出:5\r\n5\r\n5
如图所示,我试图替换 \r 以实现 Json 中的“换行符”。所以它看起来像这样:5\n5\n5
我似乎无法理解的是,当我施放时JsonMessage = JsonMessage.Replace("\r", "");
它不会取代 \r
解决方案
不要用任何内容替换“\r”,而是尝试将“\r\n”替换为“\n”作为
string mystring = "5\r\n5\r\n5";
mystring = mystring.Replace("\r\n", "\n");
这将产生“5\n5\n5”
推荐阅读
- windows - 让WIN10命令行传播WSL颜色
- javascript - Socket.io & Redis - 适合 io 游戏的架构?
- python - 在 Keras 中制作采样层
- javascript - 如何在 nodejs 的 Mosca (mqtt) 代理中启用 WSS(https) 连接?
- jmeter - JMeter:是否可以使用 JMeter 在各种从节点上运行并行线程组?
- reactjs - 导入 Webview 时构建失败
- typescript - 没有中断的 TypeScript 枚举 switch 语句
- regex - 是否可以对 QuestDB 中的 SYMBOL 类型执行正则表达式匹配?
- javascript - 在另一个 .js 文件中使用 JavaScript 类
- rust - 处理 JSON 以构造查询