我正在使用网址/\b(http|https)?(:\/\/)?(\S*)\.(\w{1,45})/ig
但如果网址更大,则无法验证。它正在工作到延伸的一半。如果我正在尝试另一个带有空格的网址之后的正则表达式,那么它就是一个带有单词的完整网址。你能帮我吗?
答案 0 :(得分:0)
如果要从文本blob中提取网址,可以使用以下正则表达式:
/
http // Match literal http
s? // Match 's' zero or one time
:\/\/ // Match literal ://
[^\s]+ // Match everything but spaces, tabs & newlines one or more times
/g
这也符合:https://localhost
和https://a
var str = 'text here https://example.com/john.doe some more text and http://another.link.example.com/with?query=string';
str.match(/https?:\/\/[^\s]+/g) // ["https://example.com/john.doe", "http://another.link.example.com/with?query=string"]