所以我有这个代码:
const urlPattern = new RegExp(
"(https?:\\/\\/(?:www\\.|(?!www))[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\\.[^\\s]{2,}/?|www\\.[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\\.[^\\s]{2,}/?)"
)
我注意到,如果我用标点符号结尾地址,则该标记将包含在地址中。有什么办法可以排除它? “您好,这是一个字符串google.com,更多内容www.address.co。”我要这个给[[你好,这是一个字符串“,” google.com“,”,更多内容“,” www.address.co“,”。“]
就目前而言,我想假设我们不提交标点符号结尾的URL,但是如果后面还有另一个非标点符号,非空格字符(例如“ www.google.com/blah”),可以使用标点符号的URL .2stuff?here”是可以的网址,但我希望使用“ www.google.com/”。只需返回[“ www.google.com/”,“。”]和句点分开即可。您对此有何建议?
答案 0 :(得分:0)
尝试一下,只需在语句的最后添加另一个模式
const urlPattern = new RegExp(
"(https?:\\/\\/(?:www\\.|(?!www))[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\\.[^\\s]{2,}[.,]/?|www\\.[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\\.[^\\s]{2,}[.,]/?)"
)