Python 正则表达式匹配字符串中的http链接方法

利用Python正则表达式匹配字符串中的http链接。主要难点是用正则表示出http 链接的模式。

import re
pattern = re.compile(r'http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*\(\),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+') # 匹配模式

string = 'Its after 12 noon, do you know where your rooftops are? http://tinyurl.com/NYCRooftops '
url = re.findall(pattern,string)
print url

>>['http://tinyurl.com/NYCRooftops']

以上这篇Python 正则表达式匹配字符串中的http链接方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • python提取具有某种特定字符串的行数据方法

    今天又帮女朋友处理了一下,她的实验数据,因为python是一年前经常用,最近找工作,用的是c,c++,python的有些东西忘记了,然后就一直催我,说我弄的慢,弄的慢,你自己弄啊,烦不烦啊,逼逼叨叨的,最后还不是我给弄好的?呵呵 好的,数据是这样的,我截个图 我用红括号括起来的,就是我所要提取的数据 其中lossstotal.txt是我要提取的原始数据,考虑两种方法去提取,前期以为所要提取行的数据是有一定规律的,后来发现,并不是,所以,我考虑用正则来提取,经过思考以后,完成了数据的提取,如下午所

  • 浅谈python下含中文字符串正则表达式的编码问题

    前言 Python文件默认的编码格式是ascii ,无法识别汉字,因为ascii码中没有中文. 所以py文件中要写中文字符时,一般在开头加 # -*- coding: utf-8 -*- 或者 #coding=utf-8. 这是指定一种编码格式,意味着用该编码存储中文字符(也可以是gbk.gb2312等). 关于测试的几点注意 -------------------------------------------- 注1:代码中有中文,就要在头部指定编码方式,如果用编辑器写代码,还要注意IDE的

  • python2与python3的print及字符串格式化小结

    最近一直在用python写程序,对于python的print一直很恼火,老是不按照预期输出.在python2中print是一种输出语句,和if语句,while语句一样的东西,在python3中为了填补python2的各种坑,将print变为函数,因此导致python3中print的一些使用和python2很不一样.同时,python3大改python2中的字符串格式化,主推format()函数格式,用法很是灵活,让老用户一时摸不着头脑.今天特来总结一样print和format,也希望能帮助大家彻

  • Python2和Python3之间的str处理方式导致乱码的讲解

    Python字符串问题 在arcpy中版本为 python2.x 在QGIS中版本为 python2.x 或者 python3.x python2 和python3 之间的str处理方式经常会导致乱码,故出此文 python3版本 # 将str或字节并始终返回str def to_str(bytes_or_str): if isinstance(bytes_or_str, bytes): value = bytes_or_str.decode('utf-8') else: value = byt

  • 浅谈python中str字符串和unicode对象字符串的拼接问题

    str字符串 s = '中文' # s: <type 'str'> s是个str对象,中文字符串.存储方式是字节码.字节码是怎么存的: 如果这行代码在python解释器中输入&运行,那么s的格式就是解释器的编码格式: 如果这行代码是在源码文件中写入.保存然后执行,那么解释器载入代码时就将s初始化为文件指定编码(比如py文件开头那行的utf-8): unicode对象字符串 unicode是一种编码标准,具体的实现可能是utf-8,utf-16,gbk等等,这就是中文字符串和unicod

  • 在python中将字符串转为json对象并取值的方法

    如下所示: string =" { "status": "error", "messages": ["Could not find resource or operation 'BZK1.MapServer' on the system."], "code": 404 }" print '对象:' string print '取值:' json.loads(string)['code']

  • python 实现数字字符串左侧补零的方法

    因为做新闻爬虫,url里面0-9的日期要左侧加零.经过查询之后得到了两种方法. 一.先设一个足够大的数,比如1000000,然后加上当前的数字比如9,得到1000009,然后转化为字符串获取第6.7位即可.下面以1000为例. k=1000 #k是用来获取01 02 03 字符串的 1001 截取第三四位 即可 for i in range(1,31): strtime=i+k time=str(strtime)[2:4] print(len(time)) 二.先获取当前字符串长度,然后用预期长

  • python 常见字符串与函数的用法详解

    strip去除空格 s = ' abcd efg ' print(s.strip()) #去除所有空格 print(s.lstrip()) #去除左边空格 print(s.rstrip()) #去除右边空格 print(s) abcd efg abcd efg abcd efg abcd efg 大小写 s = 'abc defg' print(s.upper()) print(s.upper().lower()) print(s.capitalize()) #首字母大写 ABC DEFG ab

  • Python openpyxl 遍历所有sheet 查找特定字符串的方法

    如下所示: from openpyxl import workbook from openpyxl import load_workbook from openpyxl import worksheet def find_false_in_sheet(sheet): for column in sheet.iter_cols(): for cell2 in column: if cell2.value is not None: # print cell2.value # print type(c

  • python实现生成字符串大小写字母和数字的各种组合

    1 输出大写字母.小写字母.大小写字母.数字.大小写字母和数字 1.1输出小写:找到小写a(97)到z(122)的的ASCII码,然后转义为字母 lower = "" for i in range(97,123):     lower += chr(i) print('%s' % lower) 1.2输出大写:找到大写A(65)到Z(90)的的ASCII码,然后转义为字母 upper="" for i in range(65,91):     upper+=chr(

随机推荐