`
乌拉蕾
  • 浏览: 72222 次
  • 性别: Icon_minigender_2
  • 来自: 杭州
社区版块
存档分类
最新评论

python中匹配中文以及网站名等(基于正则表达式)

阅读更多
   昨天在写爬虫的时候需要在html文件中对中文进行匹配,在网上找了找都不是我要的,后面就自己写了个,呵呵,还行。o(∩_∩)o...

import re
s=""//document.getElementById("zoom").innerHTML = document.getElementById("zoom").innerHTML.replace(/topview/gi,"TopView(<a href='http://topview.eastmoney.com/regfm.html' target='_blank' class='blue'>我们是中国人</a>)");""" 
s=s.__repr__()
w=re.findall(r'\\\w+',s,re.DOTALL|re.IGNORECASE)
w

可以得到结果是:
['\\xce', '\\xd2', '\\xc3', '\\xc7', '\\xca', '\\xc7', '\\xd6', '\\xd0', '\\xb9', '\\xfa', '\\xc8', '\\xcb']
这样我们就得到了中文的一个集合,在python中一个中文用两个16进制的字符表示,所以上面集合的元素有12个。

另外还有一种方法就是:
import re
s=""//document.getElementById("zoom").innerHTML = document.getElementById("zoom").innerHTML.replace(/topview/gi,"TopView(<a href='http://topview.eastmoney.com/regfm.html' target='_blank' class='blue'>我们是中国人</a>)");""" 
rc=re.compile(r'\\\w+',re.DOTALL|re.IGNORECASE)
li=list(s)
lis=[x for x in li if rc.search(x.__repr__())]
cn=reduce(lambda x,y:x+y,lis)
print cn
#结果:我们是中国人


另外我又想了想觉得可以写写其他比较有用的
比如
1、匹配网站名
s='http://it.chinabyte.com/269/8344769.shtml'
w=re.search(r'\.(\w+)\.',s)
w.group(1)

输出:chinabyte

2、匹配ip地址
s='202.115.5.250'
w=re.search('(\d+).(\d+).(\d+).(\d+)',s)

w.group(1)--w.group(4)就是匹配到的4个分段
这个有更简单的就是
s.split('.')

得到的输出是['202', '115', '5', '250']
如果要取出这个4个数,注意进行转化int('202')就可以转为整数了
3
1
分享到:
评论

相关推荐

    python爬虫实践_京东商品信息(正则表达式)

    看标题,结果生成excel表格 注: 使用时,header需要更改为自己浏览器中的,附加查找方法 有些运行不了可能是有些库没有安装,在命令行里,打开python的scripts文件夹下使用pip install 库的名字,即可安装

    正则表达式支持库2.0#0版(静态版)

    易语言RegEx_static.lib支持库中文名为易语言正则表达式支持库,本易语言支持库实现了对正则表达式(Regular Expression)的支持。注意,本支持库中的所有命令均为高级命令,要求使用者具有一定的正则表达式知识基础...

    常用正则表达式******

    匹配中文字符的正则表达式: [\u4e00-\u9fa5] 评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 匹配双字节字符(包括汉字在内):[^\x00-\xff] 评注:可以用来计算字符串的长度(一个双字节字符长度计2,...

    精通正则表达式~~~

    精通正则表达式第三版 搜集于网络 前言..........I 第1章:正则表达式入门.... 1 解决实际问题... 2 作为编程语言的正则表达式... 4 以文件名做类比... 4 以语言做类比... 5 正则表达式的知识框架... 6 对于...

    正则表达式支持库2.0#0版

    易语言RegEx.fnr,RegEx.fne支持库中文名为易语言正则表达式支持库,该易语言支持库实现了对正则表达式(Regular Expression)的支持。注意,本支持库中的所有命令均为高级命令,要求使用者具有一定的正则表达式知识...

    Python-使用纯python类函数语法编写正则表达式并更好地进行测试

    使用纯python类/函数语法编写正则表达式,并更好地进行测试

    正则表达式深入浅出.pdf

    正则表达式可以从⼀个基础字符串中根据⼀定的匹配模式替换⽂本中的字符串、验证表单、提取字符串 等等。 想象你正在写⼀个应⽤,然后你想设定⼀个⽤户命名的规则,让⽤户名包含字符、数字、下划线和连字 符,以及...

    正则表达式

    正则表达式,又称规则表达式,英文名为Regular Expression,在代码中常简写为regex、regexp或RE,是计算机科学的一个概念。正则表通常被用来检索、替换那些符合某个模式(规则)的文本。 正则表达式是对字符串(包括...

    Python3的re模块(正则表达式)

    Python3的re模块(正则表达式)的具体使用文档。。。。。

    java 利用正则表达式从字符串中提取省、市、区、镇、乡等区域名称(包含少数民族地区),支持地址中无省,无市,无县情况。

    java 利用正则表达式从字符串中提取省、市、区、镇、乡等区域名称(包含少数民族地区),支持地址中无省,无市,无县情况。

    正则表达式经典实例

    中文名: 正则表达式经典实例 原名: Regular Expression Cookbook 作者: (美)高瓦特斯(Goyvaerts,J.) (美)利维森(Levithan,S.)译者: 郭耀 资源格式: PDF 版本: 扫描版 出版社: 人民邮电出版社书号: ...

    利用Python正则表达式过滤敏感词的方法

    1)Python正则表达式模块re的sub()函数; 2)在正则表达式语法中,竖线“|”表示二选一或多选一。 参考代码: 以上这篇利用Python正则表达式过滤敏感词的方法就是小编分享给大家的全部内容了,希望能给大家一个参考...

    运用正则表达式匹配所有表名

    正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。在很多文本编辑器里,正则表达式通常被用来检索、替换那些符合某个模式的文本。 写出匹配SQL语句中的所有表名,备忘记录 折磨了好久,正则...

    正则表达式经典实例.pdf

    中文名: 正则表达式经典实例 原名: Regular Expression Cookbook 作者: (美)高瓦特斯(Goyvaerts,J.) (美)利维森(Levithan,S.)译者: 郭耀 资源格式: PDF 版本: 扫描版 出版社: 人民邮电出版社书号: 9787115228321发行...

    正则表达式基础 Regular Expression

    正则表达式简介  为什么需要正则表达式?  文本的复杂处理。  正则表达式的优势和用途?  一种强大而灵活的文本处理工具;  提供了一种紧凑的、动态的方式,能够以一种完全通用的方式来解决各种字符串...

    js验证中英文名的正则表达式的方法

    var patten = "([\\u4e00-\\u9fa5]{1}[\\u4e00-\\u9fa5\.·。]{"+min+","+max+"}[\\u4e00-\\u9fa5]{1}$)|([a-zA-Z]{1}[a-zA-Z\\-]{"+min+","+max+"}[a-zA-Z]{1}$)";

    pcre正则表达式库

    著名的pcre正则表达式库,功能非常强大,优化性能好,速度快,推荐使用!

    经典JavaScript正则表达式实战

    只匹配中文的正则表达式... 5 返回字符串的中文字符个数... 6 正则表达式取得匹配IP地址前三段... 6 匹配与之间的内容... 7 用正则表达式获得文件名... 7 绝对路径变相对路径... 8 用户名正则... 8 匹配英文地址... ...

Global site tag (gtag.js) - Google Analytics