python中关于正则表达式

>>> import re
>>> s=‘nihaoma‘
>>> re.findall(s,‘nihao‘)
[]
>>> re.findall(s,‘nihaoma‘)
[‘nihaoma‘]
>>> st=‘ni hao ma ? wo hen hao.‘
>>> res=‘ni‘
>>> re.findall(s,res)
[]
>>> re.findall(res,s)
[‘ni‘]
>>> res=r‘ni‘
>>> re.findall(res,st)
[‘ni‘]
>>> res=r‘t[oi]p‘
>>> sr=‘montion top tip tep‘
>>> re.findall(res,sr)
[‘top‘, ‘tip‘]
>>> res=r‘t[^io]p‘  #此处^是取反,获取t~p,中间不为i和o的字符,sr中符合条件的是tep
>>> re.findall(res,sr)
[‘tep‘]

>>> r=‘t[abc^]‘  #此处^是当一个字符
>>> re.findall(r,‘t^‘)
[‘t^‘]

>>> res=r‘^t[io]p‘
>>> re.findall(res,sr)
[]
>>> res=r‘‘

>>> sr=‘tep haieng‘
>>> res=r‘^tep‘  #匹配tep  字符,^表示匹配行首
>>> re.findall(res,sr) 
[‘tep‘]
>>> sr=‘haieng tep‘
>>> re.findall(res,sr)
[]

>>> res=r‘tep$‘  #匹配tep字符,$表示匹配行尾的tep
>>> re.findall(res,sr)
[‘tep‘]

>>> te=‘^ab‘
>>> r=r‘\^ab‘
>>> re.findall(r,te)
[‘^ab‘]
>>> r=r‘^abc‘
>>> re.findall(r,‘^abc‘)  #此处‘^‘是个字符,r=r‘^abc‘中^是表示匹配行首
[]

\

\d : 匹配任意十进制数,【0-9】  \D:匹配非数字字符,[^0-9]

\s:匹配任何空白字符                  \S:匹配任何非空白字符

\w:匹配任何字母数字字符,[a-zA-Z0-9]

\W:匹配任何 非字母数字字符,[^a-zA-Z0-9]

时间: 2024-08-02 07:05:39

python中关于正则表达式的相关文章

Python中re(正则表达式)模块函数学习

今天学习了Python中有关正则表达式的知识.关于正则表达式的语法,不作过多解释,网上有许多学习的资料.这里主要介绍Python中常用的正则表达式处理函数. 方法/属性 作用 match() 决定 RE 是否在字符串刚开始的位置匹配 search() 扫描字符串,找到这个 RE 匹配的位置 findall() 找到 RE 匹配的所有子串,并把它们作为一个列表返回 finditer() 找到 RE 匹配的所有子串,并把它们作为一个迭代器返回 match() 函数只检查 RE 是否在字符串开始处匹配

Python学习-38.Python中的正则表达式(二)

在Python中,正则表达式还有较其他编程语言有特色的地方.那就是支持松散正则表达式了. 在某些情况,正则表达式会写得十分的长,这时候,维护就成问题了.而松散正则表达式就是解决这一问题的办法. 用上一次分组的代码作为例子: 1 import re 2 userinput = input("please input test string:") 3 m = re.match(r'(\d{3,4})-(\d{8})',userinput) 4 if m: 5 print('区号:' + m

Python学习-37.Python中的正则表达式

作为一门现代语言,正则表达式是必不可缺的,在Python中,正则表达式位于re模块. 1 import re 这里不说正则表达式怎样去匹配,例如\d代表数字,^代表开头(也代表非,例如^a-z则不匹配任何小写字符),$代表结尾,这些百科或者其他书籍都有. 例子一,字符串中是否包含数字: 1 import re 2 userinput = input("please input test string:") 3 if re.match(r'\d',userinput): 4 print(

如何理解Python中的正则表达式(2)

今天小编要跟大家分享的文章是如何理解Python中的正则表达式(2)?上节课我们简单认识了一下Python中的正则表达式,这节课我们继续了解Python正则表达式的相关内容,Python入门新手和正在Python学习的小伙伴快来看一看吧,希望能够对大家有所帮助 ! 今天为大家解决上节课中的部分疑问,比如r代表什么,来一起学习吧: 有同学问起昨天那段测试代码里的问题,我来简单说一下. 1. r”hi” 这里字符串前面加了r,是raw的意思,它表示对字符串不进行转义.为什么要加这个?你可以试试pri

Python中的正则表达式-re模块

有时候我们需要模糊查找我们需要的字符串等值,这个时候需要用到正则表达式. 正则表达式的使用,在python中需要引入re包 import re 1.首先了解下正则表达式的常用语法 --单个字符 . 任意的一个字符 a|b 字符a或字符b [afg] a或者f或者g的一个字符 [0-4] 0-4范围内的一个字符 [a-f] a-f范围内的一个字符 [^a] 不是a的一个字符 \s 一个空格 \S 一个非空格 \d [0-9],即0-9的任意字符 \D [^0-9],即非0-9的任意字符 \w [0

【转载】Python中的正则表达式教程

本文http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html 正则表达式经常被用到,而自己总是记不全,转载一份完整的以备不时之需. 1. 正则表达式基础 1.1. 简单介绍 正则表达式并不是Python的一部分.正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十分强大.得益于这一点,在提供了正则表达式的语言里,正则表达式的语法都是一样的,区别只在于不同的编程语言实现

python中的正则表达式(re模块)

一.简介 正则表达式本身是一种小型的.高度专业化的编程语言,而在python中,通过内嵌集成re模块,程序媛们可以直接调用来实现正则匹配.正则表达式模式被编译成一系列的字节码,然后由用C编写的匹配引擎执行. 二.正则表达式中常用的字符含义 1.普通字符和11个元字符: 普通字符 匹配自身 abc abc . 匹配任意除换行符"\n"外的字符(在DOTALL模式中也能匹配换行符 a.c abc \ 转义字符,使后一个字符改变原来的意思 a\.c;a\\c a.c;a\c * 匹配前一个字

python中利用正则表达式匹配ip地址

现在有一道题目,要求利用python中re模块来匹配ip地址,我们应如何着手? 首先能想到的是ip地址是数字,正则表达式是如何匹配数字的呢? \d或[0-9] 对于这个问题,不要一下子上来就写匹配模式,应该一步步分解,把复杂的问题简单化 比如ip地址,我们可以总结一下规律 1. 它是一个字符串 2. 字符串内部是由4个1-3位的数字和3个.组成 3. 数字的范围是0-255 接下来,我们先试一下匹配第1个数字 第一步:尝试匹配192.168.100.123中的192 >>> import

在python中使用正则表达式

一.转义符 1.在python中的转义符 (1)\\n与\n的区别 (2)r"\next" 通过r来进行转义 (3)"\\\\d"与"\\d"的组合 2.在正则表达式中的转义符 (1)\\n   表示匹配\n这个字符 (2)[(), +, *,/, ., ?, $]  这些符号在[]中会现原形 (3)"\("  表示匹配(这个符号 二 re模块 1.字符串匹配 (1)re.findall("正则表达式",

Python中使用正则表达式获取两个字符中间部分

问题背景:当我们爬取网页信息时,对于一些标签的提取是没有意义的,所以需要提取标签中间的信息. 解决办法:用到了re包下的函数 方法1:用到了research()方法和group()方法 方法2:用到了findall()方法 具体实现: import re # 匹配两个字符中间的所有字符 a = '<p>life is short, i use python<a/>i love it<p>' r = re.search('<p>(.*)<a/>(.