用JavaScript检测文本中的URL

用JavaScript检测文本中的URL

是否有人建议检测一组字符串中的URL?

arrayOfStrings.forEach(function(string){
  // detect URLs in strings and do something swell,
  // like creating elements with links.});

最新情况:最后,我使用了这个用于链路检测…的正则表达式。显然几年后。

kLINK_DETECTION_REGEX = /(([a-z]+:\/\/)?(([a-z0-9\-]+\.)+([a-z]{2}|aero|arpa|biz|com|coop|edu|gov|info|int|jobs|mil|museum|name|nato|net|org|pro|travel|local|internal))(:[0-9]{1,5})?(\/[a-z0-9_\-\.~]+)*(\/([a-z0-9_\-\.]*)(\?[a-z0-9+_\-\.%=&]*)?)?(#[a-zA-Z0-9!$&'()*+.=-_~:@/?]*)?)(\s+|$)/gi

完整的助手(有可选的扶手支持)位于吉斯特#1654670.


慕尼黑的夜晚无繁华
浏览 688回答 3
3回答

料青山看我应如是

下面是我最后使用的正则表达式:var&nbsp;urlRegex&nbsp;=/(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig;这不包括URL中的尾随标点符号。新月的功能就像一种魅力:)所以:function&nbsp;linkify(text)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;urlRegex&nbsp;=/(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig; &nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;text.replace(urlRegex,&nbsp;function(url)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;'<a&nbsp;href="'&nbsp;+&nbsp;url&nbsp;+&nbsp;'">'&nbsp;+&nbsp;url&nbsp;+&nbsp;'</a>'; &nbsp;&nbsp;&nbsp;&nbsp;});}
打开App,查看更多内容
随时随地看视频慕课网APP