在我的ASP.NET应用程序中,我想使用正则表达式将URL更改为用户帖子中的超链接,例如:
http://www.somesite.com/default.aspx
至
http://www.somesite.com/default.aspx
使用Regex.Replace()这很容易,但我遇到的问题是,如果URL太长,我想截断链接文本,例如:
http://www.somesite.com/files/default.aspx?id=a78b38ae723b1f8ed232c23de7f9121d&n=93b34a732e074c934e32d123de19c83d
至
http://www.somesite.com/files/default.aspx?id=a78b38ae723b1f8...
所以它显示如下:
http://www.somesite.com/files/default.aspx?id=a78b38ae723b1f8...
我试图使用Regex.Matches()但我不知道如何替换文本,任何建议?
谢谢你的帮助 ...
编辑:没关系,伙计们,我自己想出来,结果非常简单,我只是使用了MatchEvaluator!
public static string Replace( string input, string pattern, MatchEvaluator evaluator )
Michael Bray.. 5
这是一个使用正则表达式试图做太多的例子.我建议使用Regex来查找模式,但是使用代码逻辑来根据自己的喜好调整输出.使用替换输出新模式并不太难,但是尝试控制链接文本的长度太过分了.
这是一个使用正则表达式试图做太多的例子.我建议使用Regex来查找模式,但是使用代码逻辑来根据自己的喜好调整输出.使用替换输出新模式并不太难,但是尝试控制链接文本的长度太过分了.