top
Loading...
轉換文本為超聯和Email格式的代碼

如果用戶輸入了http://aaa.bbb.ccc
下面這個代碼將把他的輸入轉換成http://aaa.bbb.ccc
大家看看正則表達式有多厲害,呵呵。

<%
'調用這個函數來顯示成超聯結
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
%>

<script language="javascript1.2" runat=server>
function edit_hrefs(s_html){
// 一個使用正則表達式的典范
// 轉換文本中所有的超聯結和電子郵件格式
s_str = new String(s_html);

s_str = s_str.replace(/http://www(.[w+.:/\_]+)/gi,
"http://¬¤¸$1");

s_str = s_str.replace(/(http://w+.[w+.:/\_]+)/gi,
"<a href="$1">$1</a>");

s_str = s_str.replace(/(www.[w+.:/\_]+)/gi,
"<a href="http://$1">$1</a>");

s_str = s_str.replace(/http://¬¤¸(.[w+.:/\_]+)/gi,
"<a href="http://www$1">http://www$1</a>");

s_str = s_str.replace(/(w+@[w+.?]*)/gi,
"<a href="mailto:$1">$1</a>");


return s_str;
}
</script>


北斗有巢氏 有巢氏北斗