diff --git a/im-uniapp/common/url.js b/im-uniapp/common/url.js index db2fb61..ff04275 100644 --- a/im-uniapp/common/url.js +++ b/im-uniapp/common/url.js @@ -1,6 +1,6 @@ let replaceURLWithHTMLLinks = (content, color) => { - // 使用正则表达式匹配更广泛的URL格式 - const urlRegex = /(?:https?:\/\/[^\s]+|www\.[^\s]+)/g; + // 使用正则表达式匹配更广泛的URL格式(此正则由deepseek生成) + const urlRegex = /(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|]|\bwww\.[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig; return content.replace(urlRegex, (url) => { // 如果URL不以http(s)://开头,则添加http://前缀 if (!url.startsWith("http")) { diff --git a/im-web/src/api/url.js b/im-web/src/api/url.js index db2fb61..ff04275 100644 --- a/im-web/src/api/url.js +++ b/im-web/src/api/url.js @@ -1,6 +1,6 @@ let replaceURLWithHTMLLinks = (content, color) => { - // 使用正则表达式匹配更广泛的URL格式 - const urlRegex = /(?:https?:\/\/[^\s]+|www\.[^\s]+)/g; + // 使用正则表达式匹配更广泛的URL格式(此正则由deepseek生成) + const urlRegex = /(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|]|\bwww\.[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig; return content.replace(urlRegex, (url) => { // 如果URL不以http(s)://开头,则添加http://前缀 if (!url.startsWith("http")) {