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