转换文本为超连接和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(/bhttp://www(.[w+.:/_]+)/gi,

  "http://¬¤¸$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://¬¤¸(.[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>