热线电话:13121318867

登录
2021-05-10 阅读量: 1413
Python如何使用正则表达式提取字符串中的 URL

定一个字符串,里面包含 URL 地址,需要我们使用正则表达式来获取字符串的 URL,该如何做呢?

使用正则表达式来提取,如下:


import re 
  
def Find(string): 
    # findall() 查找匹配正则表达式的字符串
    url = re.findall('https?://(?:[-\w.]|(?:%[\da-fA-F]{2}))+', string)
    return url 
      
 
string = 'Runoob 的网页地址为:https://www.jianshu.com/p/c9e9cfd6986d'
print("Urls: ", Find(string))

?: 说明:


(?:x)

匹配 x 但是不记住匹配项。这种括号叫作非捕获括号,使得你能够定义与正则表达式运算符一起使用的子表达式。看看这个例子 /(?:foo){1,2}/。如果表达式是 /foo{1,2}/,{1,2} 将只应用于 'foo' 的最后一个字符 'o'。如果使用非捕获括号,则 {1,2} 会应用于整个 'foo' 单词。


执行以上代码输出结果为:


Urls: ['']


102.8571
0
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子