转换文本为超联和Email格式的代码
网络整理 - 07-26
如果用户输入了下面这个代码将把他的输入转换成
大家看看正则表达式有多厉害,呵呵。
<%
'调用这个函数来显示成超联结
Response.Write to_html(s_message)
%>
<%
Function to_html(s_string)
to_html = Replace(s_string, """", """)
to_html = Replace(to_html, "<", "<")
to_html = Replace(to_html, ">", ">")
to_html = Replace(to_html, vbcrlf, "<br>")
to_html = Replace(to_html, "/<", "<")
to_html = Replace(to_html, "/>", ">")
to_html = edit_hrefs(to_html)
End Function
%>
<s cript language="javas cript1.2" runat=server>
function edit_hrefs(s_html){
// 一个使用正则表达式的典范
// 转换文本中所有的超联结和电子邮件格式
s_str = new String(s_html);
s_str = s_str.replace(/b(.[w+.:/_]+)/gi,
"¬¤¸$1");
s_str = s_str.replace(/b(+.[w+.:/_]+)/gi,
"<a href="$1">$1</a>");
s_str = s_str.replace(/b([w+.:/_]+)/gi,
"<a href="$1">$1</a>");
s_str = s_str.replace(/b¬¤¸(.[w+.:/_]+)/gi,
"<a href="$1">$1</a>");
s_str = s_str.replace(/b(w+@[w+.?]*)/gi,
"<a href="mailto:$1">$1</a>");
return s_str;
}
</s cript>