gpt4 book ai didi

c# - RegEx 替换美元符号之间的文本

转载 作者:行者123 更新时间:2023-11-30 14:01:46 29 4
gpt4 key购买 nike

我想使用 C# .NET 替换美元符号之间的每个文本实例。例如:

Check out this TeX: $x\in\mathbb{Z}^+$. It's cool.

...成为...

Check out this TeX: <img src="http://chart.googleapis.com/chart?cht=tx&chl=x\in\mathbb{Z}^%2B" alt="x\in\mathbb{Z}^+" />. It's cool.

请注意,公式在传递给 Google Charts API 之前需要进行 URL 编码。

你能告诉我如何使用正则表达式(或其他方式)来做到这一点吗?

最佳答案

这是一个适合您的示例方法。请注意,通过使用 Regex.Matches 方法,该方法能够一次处理多个匹配项:

public static string AddImgTags(string input)
{
string pattern = @"\$([^\$]*)\$";

foreach (Match match in Regex.Matches(input, pattern))
{
input = input.Replace(match.Value,
string.Format("<img src=\"http://chart.googleapis.com/chart?cht=tx&chl={0}\" alt=\"{0}\" />",
HttpUtility.UrlEncode(match.Value)));
}

return input;
}

模式("\$[^\$]*\$")的解释如下:

  • \$ - 匹配开头 $
  • ([^\$]*) - 匹配除 $ 之外的任何字符,重复 0 次或多次。还将匹配的字符分组,以便以后引用。
  • \$ - 匹配结尾的 $

关于c# - RegEx 替换美元符号之间的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7666305/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com