url.js 704 B

1234567891011121314151617181920212223
  1. // 使用正则表达式匹配更广泛的URL格式(此正则由deepseek生成)
  2. const regex = /(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|]|\bwww\.[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig;
  3. let containUrl = (content) => {
  4. return regex.test(content)
  5. }
  6. let replaceURLWithHTMLLinks = (content, color) => {
  7. return content.replace(regex, (url) => {
  8. // 如果URL不以http(s)://开头,则添加http://前缀
  9. if (!url.startsWith("http")) {
  10. url = "http://" + url;
  11. }
  12. return `<a href="${url}" target="_blank" style="color: ${color};text-decoration: underline;">${url}</a>`;
  13. });
  14. }
  15. export default {
  16. containUrl,
  17. replaceURLWithHTMLLinks
  18. }