Regex 如何修改正则表达式以匹配页面上的所有URL
我使用正则表达式搜索一个简单的url: 它匹配文本中的一个简单url。如何修改此正则表达式以匹配文本中的所有URLRegex 如何修改正则表达式以匹配页面上的所有URL,regex,url,Regex,Url,我使用正则表达式搜索一个简单的url: 它匹配文本中的一个简单url。如何修改此正则表达式以匹配文本中的所有URL 我对正则表达式不太在行,所以请有人看看你的例子,你没有放flag 为“global”添加“g”标志(表示正则表达式不会在第一次匹配时停止) 为多行搜索添加“m”标志,表示开始和结束锚(^和$)匹配行的开始和结束,而不是整个文本 编辑: 您最初的正则表达式是\\^(http:\/\/www.\124; https:\/\/www.\124; http:\/\/\/\\/\\/
我对正则表达式不太在行,所以请有人看看你的例子,你没有放flag
- 为“global”添加“g”标志(表示正则表达式不会在第一次匹配时停止)
- 为多行搜索添加“m”标志,表示开始和结束锚(^和$)匹配行的开始和结束,而不是整个文本李>
\\^(http:\/\/www.\124; https:\/\/www.\124; http:\/\/\/\\/\\/\\/\\/)?[a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.[a-z]{2,5}(:[0-9]{1,5})(\/.$
你需要
#^(http:\/\/www\.\.\https:\/\/www\.\124; http:\/\/\\/\\\/\\\\/\\/\\/\\)?[a-z0-9]{1}[a-z0-9]+.*.[a-z]{2,5}(:[0-9]{1,5})(\/.*)$\gm
(注意末尾的两个字母,它是标志)
编辑2
你可以缩短你的正则表达式
[a-z0-9]+([\-\.]{1}[a-z0-9]+)*.[a-z]{2,5}(:[0-9]{1,5})(\/.*)$gm
请注意,
abc | abdc | ab | abd
是可以编写的abd?c?
,这就是我用您的http:\/\/\/\;https:\/\/\\\/\\\…
编写一个正则表达式来匹配所有/strong>URL的任务。看一看,选择一个符合你需要的。您链接到的一个和另一个答案中的一个在该链接中许多更复杂的url字符串上都失败。您强调了单词ALL。虽然公认答案中的正则表达式是好的,但它不能捕获所有URL,这是不可能的。你应该做更多的研究,试着更好地限定你的问题。这个问题及其目前的答案相当误导。