当前位置:首页 > 编程教程 > Python技术文章 > Python 正则表达式匹配字符串中的http链接方法

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

  • 发布时间:
  • 作者:码农之家
  • 点击:117

这篇文章主要知识点是关于Python、正则表达式、http、的内容,如果大家想对相关知识点有系统深入的学习,可以参阅以下电子书

自学Python编程基础学习笔记
  • 类型:Python手册大小:16.1 MB格式:PDF作者:python程序员
立即下载

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链接方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持码农之家。

以上就是本次给大家分享的关于java的全部知识点内容总结,大家还可以在下方相关文章里找到相关文章进一步学习,感谢大家的阅读和支持。

Python 相关电子书
学习笔记
网友NO.293426

python正则表达式re之compile函数解析

re正则表达式模块还包括一些有用的操作正则表达式的函数。下面主要介绍compile函数。 定义: compile(pattern[,flags] ) 根据包含正则表达式的字符串创建模式对象。 通过python的help函数查看compile含义: help(re.compile) compile(pattern, flags=0) Compile a regular expression pattern, returning a pattern object. 通过help可以看到compile方法的介绍,返回一个pattern对象,但是却没有对第二个参数flags进行介绍。第二个参数flags是匹配模式,可以使用按位或'|'表示同时生效,也可以在正则表达式字符串中指定。Pattern对象是不能直接实例化的,只能通过compile方法得到。匹配模式有: 1).re.I(re.IGNORECASE): 忽略大小写 2).re.M(MULTILINE): 多行模式,改变'^'和'$'的行为 3).re.S(DOTALL): 点任意匹配模式,改变'.'的行为 4).re.L(LOCALE): 使预定字符类 \w \W \b \B \s \S 取决于当前区域设定 5).re.U(UNICODE): 使预定字符类……

网友NO.591909

python 用正则表达式筛选文本信息的实例

本文主要介绍如何对多个文本进行读取,并采用正则表达式对其中的信息进行筛选,将筛选出来的信息存写到一个新文本。 文本基础操作 打开文件:open(‘文件名',‘打开方式')file=open(r'C:\Users\yuanlei\Desktop\mytxt.txt','w+').为避免报错,在文件名的引号前加个r. 文件打开方式: 只读——r或rt,rb为二进制文件;打开文件前清空文件内容——w或wt;在文末写入——a+; 清空内容然后在文末写入——w+;写到文件任意位置——r+; 关闭文件: 文件打开运行好后必须要关闭——文件名.close()mytxt.close() 读取文件中的内容:将每行内容,包括换行符,作为一个元素存入数组——lines=file_object.readlines(),但是这样会把换行符也赋进去 去除换行符——new_lines=lines.splitlines() os包: import os 获取文件地址——os.listdir(父文件地址) 下面附上实现摘要中说的功能的完整代码: #……

网友NO.835930

python中如何使用正则表达式的集合字符示例

前言 本文主要给大家介绍了关于python使用正则表达式的集合字符的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。 在正则表达式里,想匹配一些字符中的一个,也就是说给出一个字符的集合,只要出现这个集合里任意的字符,都是成立的。比如[ab],就是将匹配任意出现a或b的字符。比如a[ab]+,它是贪婪模式,将会匹配所有是a后面的a或b的字符串,如abbaabbba。如果要改为非贪婪模式,要在后面添加?,如下面的例子: 示例代码 #python 3.6 #蔡军生 #http://blog.csdn.net/caimouse/article/details/51749579 # from re_test_patterns import test_patterns test_patterns( 'abbaabbba', [('[ab]', 'either a or b'), ('a[ab]+', 'a followed by 1 or more a or b'), ('a[ab]+?', 'a followed by 1 or more a or b, not greedy')], ) 结果输出如下: '[ab]' (either a or b) 'abbaabbba' 'a' .'b' ..'b' ...'a' ....'a' .....'b' ……

网友NO.262566

Python正则表达式教程之二:捕获篇

前言 在上一篇文中,我们介绍了关于Python正则表达式的基础,那么在这一篇文章里,我们将总结一下正则表达式关于捕获的用法。下面话不多说,来看看详细的介绍吧。 捕获 捕获和分组在正则表达式中有着密切的联系,一般情况下,分组即捕获,都用小括号完成(因此,小括号在正则表达式中也属于特殊字符,表达原含义时需要转义): (…) 正常分组,并捕获 (?:…) 分组,但是不捕获 举个例子,假设我们需要匹配一个座机号码: m = re.search(r'^(\d{3,4}-)?(\d{7,8})$','020-82228888') m.group(0)'020-82228888' m.group(1)'020-' m.group(2)'82228888' 这里,默认分组(0)是完整的匹配,之后的分组则按出现顺序排列。 接下来,我们想在一整段文本中,找出所有的座机号码,这里需要用到 re.findall : re.findall(r'(\d{3,4}-)?(\d{7,8})','020-82228888\n0357-4227865') [('020-', '82228888'), ('0357-', '4227865')] ……

<
1
>

Copyright 2018-2020 www.xz577.com 码农之家

版权投诉 / 书籍推广 / 赞助:520161757@qq.com