我使用C#从用户输入中以编程方式生成降价表。

编辑

考虑以下演示代码:

var a = Console.ReadLine();
var b = Console.ReadLine();
var c = Console.ReadLine();

var markdownTableBuilder = new StringBuilder();
markdownTableBuilder.AppendLine("| Column A | Column B | Column C |");
markdownTableBuilder.AppendLine("| -------- | -------- | ---------|");

markdownTableBuilder.AppendLine($"| {a} | {b} | {c}");
markdownTableBuilder.AppendLine("");

Console.WriteLine(markdownTableBuilder.ToString());


我想从a,b,c变量中转义所有markdown语法。例如,如果用户输入“ Hello | * world *,应转至Hello \\ \*世界\*

最佳答案

您可以使用正则表达式进行替换:

string escaped = Regex.Replace(userInput, @"([|\\*])", @"\$1");


这将找到任何'|', '\', '*'字符并将'\'放在其前面。

关于c# - 以编程方式生成 Markdown 表时如何转义字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39146164/

10-11 06:51