首页 > 学院 > 开发设计 > 正文

转换文本为超联和Email格式的代码

2019-11-18 21:14:22
字体:
来源:转载
供稿:网友
如果用户输入了http://aaa.bbb.ccc
下面这个代码将把他的输入转换成http://aaa.bbb.ccc
大家看看正则表达式有多厉害,呵呵。

<%
    '调用这个函数来显示成超联结
    Response.Write to_html(s_message)
%>


<%
Function to_html(s_string)
    to_html = Replace(s_string, """", "&quot;")
    to_html = Replace(to_html, "<", "&lt;")
    to_html = Replace(to_html, ">", "&gt;")
    to_html = Replace(to_html, vbcrlf, "<br>")
    to_html = Replace(to_html, "/&lt;", "<")
    to_html = Replace(to_html, "/&gt;", ">")
    to_html = edit_hrefs(to_html)
End Function
%>

<script language="javascript1.2" runat=server>
function edit_hrefs(s_html){
    // 一个使用正则表达式的典范
    // 转换文本中所有的超联结和电子邮件格式
    s_str = new String(s_html);

    s_str = s_str.replace(//bhttp/:////www(/.[/w+/./:///_]+)/gi,
        "http/:////&not;¤&cedil;$1");

    s_str = s_str.replace(//b(http/://///w+/.[/w+/./:///_]+)/gi,
        "<a href=/"$1/">$1<//a>");
        
    s_str = s_str.replace(//b(www/.[/w+/./:///_]+)/gi,
        "<a href=/"http://$1/">$1</a>");
        
    s_str = s_str.replace(//bhttp/:////&not;¤&cedil;(/.[/w+/./:///_]+)/gi,
        "<a href=/"http/:////www$1/">http/:////www$1</a>");
        
    s_str = s_str.replace(//b(/w+@[/w+/.?]*)/gi,
        "<a href=/"mailto/:$1/">$1</a>");
        
    
    return s_str;
}
</script>


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表