在ASP.NET中自动给URL加上超级链接
核心提示:作为1个程序员,在完成设计后还要根据程序的情况和用户的反应不断对程序进行改进,这样才能不断地完善自己的作品。我在制作完软件商务网 http://www.bizsofts.com 的论坛后,发现人们总喜欢在帖子中加上各种有用的URL链接或Email地址。而我当初设计时没有考虑到这1
作为1个程序员,在完成设计后还要根据程序的情况和用户的反应不断对程序进行改进,这样才能不断地完善自己的作品。我在制作完软件商务网 http://www.bizsofts.com 的论坛后,发现人们总喜欢在帖子中加上各种有用的URL链接或Email地址。而我当初设计时没有考虑到这1点,使得这些URL链接或Email地址只能以文字的情势而其实不是以超链接的情势显示,其它浏览帖子的人还必须把这些URL链接拷贝到浏览器中或把Email地址拷贝到Outlook中才能转到相应的链接地址或发送电子邮件到相应的Email地址。
发现这个题目后,我就着手进行解决。首先是从网上查找有关这方面的现在代码,惋惜的是,在搜索引擎上反复查找也没有发现这方面的文章。后来我1想,干脆我自己用ASP.NET编写1个。
要想自动显示超链接的关键在于如何能正确辨认超链接,毫无疑问的,最有效的方法是用正则表达式。正则表达式是由普通字符(例如字符 a 到 z)和特殊字符(称为元字符)组成的文字模式,描写了1种字符串匹配的模式,可以用来检查1个串是否是含有某种子串、将匹配的子串做替换或从某个串中取出符合某个条件的子串等。.NET基础类库中包括有1个名字空间和1系列可以充分发挥规则表达式威力的类,用它便可以够自动探测出文字中的URL链接或Email地址。下面我具体讲讲如何用ASP.NET(C#)1步步实现我们的目的:
首先,要想在ASP.NET(C#)中使用正则表达式就必须把 System.Text.RegularExpressions 这个命名空间包括进来:
以下为援用的内容: using System.Text.RegularExpressions; |
第2步是用正则表达式辨认URL超链接:
以下为援用的内容: Regex urlregex = new Regex(@"(http:\/\/([\w.]+\/?)\S*)", RegexOptions.IgnoreCase|RegexOptions.Compiled); |
这里的代码是用正则表达式辨认Email地址:这里的代码是用正则表达式辨认Email地址:
以下为援用的内容: Regex emailregex = new Regex(@"([a-zA-Z_0⑼.-]+@[a-zA-Z_0⑼.-]+\.\w+)", RegexOptions.IgnoreCase|RegexOptions.Compiled); |
第3步,当程序已辨认出URL超链接或Email地址后,必须用超链接对这些超链接进行替换,这样才能把这些文字显示为链接的情势。我这里把它们全部包括在函数中:
http://www.fw8.net/
TAG:程序,地址,情势,链接,这样才能
评论加载中...
|