C# 使用C,如何在文本块中搜索和输入超链接?

C# 使用C,如何在文本块中搜索和输入超链接?,c#,regex,replace,C#,Regex,Replace,由于某些原因,我无法通过搜索找到这个,不确定使用什么关键字。在我的web应用程序中,用户在纯文本框中输入文本。我想为它们自动将任何html锚定标记转换为html锚定标记 捕捉链接的最佳方式是什么?我只想支持以http:///开头的链接 谢谢 使用正则表达式。您可以在此处找到丢失的表达式: 然后像这样做: Regex regex = new Regex("YOUR PATTERN"); regex.Replace( textBlock, delegate (Match m) {

由于某些原因,我无法通过搜索找到这个,不确定使用什么关键字。在我的web应用程序中,用户在纯文本框中输入文本。我想为它们自动将任何html锚定标记转换为html锚定标记

捕捉链接的最佳方式是什么?我只想支持以http:///开头的链接


谢谢

使用正则表达式。您可以在此处找到丢失的表达式:

然后像这样做:

Regex regex = new Regex("YOUR PATTERN");
regex.Replace(
   textBlock, 
   delegate (Match m) { 
       return string.Format(@"<a href=""{0}"">{0}</a>", m.Groups[0]); 
   });
请注意,您应该使用符合需要的正则表达式替换模式。

将http://[^]+替换为


您可能还需要涵盖https链接:字符串模式=https?:/[^]+;您可能还希望在输出中包含完整的URL,并在新窗口中打开它:htmlMessage=rgx.replaceThmlmessage;
  string input = "Why don't you use http://www.google.com for that?";
  string pattern = "(http://([^ ]+))";
  string replacement = "<a href=\"$1\">$2</a>";
  Regex rgx = new Regex(pattern);
  string result = rgx.Replace(input, replacement);
  Console.WriteLine("Original String: {0}", input);
  Console.WriteLine("Replacement String: {0}", result)