- 浏览: 651776 次
- 性别:
- 来自: 淮安
文章分类
- 全部博客 (260)
- Java (0)
- vim (9)
- python (86)
- AdobePDF (2)
- mysql (10)
- Emacs (12)
- JavaScript (18)
- postgresql (2)
- windows (4)
- Eclipse (1)
- debian (4)
- 浏览器 (2)
- html (1)
- rhel (1)
- Linux (4)
- SVN (2)
- Ruby (30)
- ERP (8)
- my_linux_config (2)
- C++ (2)
- CentOS (5)
- Ubuntu (12)
- httpd (3)
- nginx (1)
- CSS (1)
- Agile (1)
- C (3)
- Redmine (2)
- 面试题 (1)
- 收集 (7)
- 架构 (1)
- 服务器 (2)
- logarithms (1)
- 数学 (1)
最新评论
-
hymzjsw:
python 变量命名规范 -
IWSo:
...
mysql #1170错误(42000) BLOB/TEXT Column Used in Key Specification Without a Key Le -
wl59138528:
由于Python臭名昭著的GIL问题,OpenERP 6.1以 ...
OpenERP 部署环境使用说明 -
greybeard:
xiaoyao3857 写道怎么看着一大堆,似乎中间有些东西重 ...
python 变量命名规范 -
xiaoyao3857:
怎么看着一大堆,似乎中间有些东西重复说了吧
python 变量命名规范
re.match
re.match 尝试从字符串的开始匹配一个模式,如:下面的例子匹配第一个单词。
import re
text = "JGood is a handsome boy, he is cool, clever, and so on..."
m = re.match(r"(\w+)\s", text)
if m:
print m.group(0), '\n', m.group(1)
else:
print 'not match'
import re text = "JGood is a handsome boy, he is cool, clever, and so on..." m = re.match(r"(\w+)\s", text) if m: print m.group(0), '\n', m.group(1) else: print 'not match'
re.match的函数原型为:re.match(pattern, string, flags)
第一个参数是正则表达式,这里为"(\w+)\s",如果匹配成功,则返回一个Match,否则返回一个None;
第二个参数表示要匹配的字符串;
第三个参数是标致位,用于控制正则表达式的匹配方式,如:是否区分大小写,多行匹配等等。
re.search
re.search函数会在字符串内查找模式匹配,只到找到第一个匹配然后返回,如果字符串没有匹配,则返回None。
import re
text = "JGood is a handsome boy, he is cool, clever, and so on..."
m = re.search(r'\shan(ds)ome\s', text)
if m:
print m.group(0), m.group(1)
else:
print 'not search'
import re text = "JGood is a handsome boy, he is cool, clever, and so on..." m = re.search(r'\shan(ds)ome\s', text) if m: print m.group(0), m.group(1) else: print 'not search'
re.search的函数原型为: re.search(pattern, string, flags)
每个参数的含意与re.match一样。
re.match与re.search的区别:re.match只匹配字符串的开始,如果字符串开始不符合正则表达式,则匹配失败,函数返回None;而re.search匹配整个字符串,直到找到一个匹配。
re.sub
re.sub用于替换字符串中的匹配项。下面一个例子将字符串中的空格 ' ' 替换成 '-' :
import re
text = "JGood is a handsome boy, he is cool, clever, and so on..."
print re.sub(r'\s+', '-', text)
import re text = "JGood is a handsome boy, he is cool, clever, and so on..." print re.sub(r'\s+', '-', text)
re.sub的函数原型为:re.sub(pattern, repl, string, count)
其中第二个函数是替换后的字符串;本例中为'-'
第四个参数指替换个数。默认为0,表示每个匹配项都替换。
re.sub还允许使用函数对匹配项的替换进行复杂的处理。如:re.sub(r'\s', lambda m: '[' + m.group(0) + ']', text, 0);将字符串中的空格' '替换为'[ ]'。
re.split
可以使用re.split来分割字符串,如:re.split(r'\s+', text);将字符串按空格分割成一个单词列表。
re.findall
re.findall可以获取字符串中所有匹配的字符串。如:re.findall(r'\w*oo\w*', text);获取字符串中,包含'oo'的所有单词。
re.compile
可以把正则表达式编译成一个正则表达式对象。可以把那些经常使用的正则表达式编译成正则表达式对象,这样可以提高一定的效率。下面是一个正则表达式对象的一个例子:
import re
text = "JGood is a handsome boy, he is cool, clever, and so on..."
regex = re.compile(r'\w*oo\w*')
print regex.findall(text) #查找所有包含'oo'的单词
print regex.sub(lambda m: '[' + m.group(0) + ']', text) #将字符串中含有'oo'的单词用[]括起来。
import re text = "JGood is a handsome boy, he is cool, clever, and so on..." regex = re.compile(r'\w*oo\w*') print regex.findall(text) #查找所有包含'oo'的单词 print regex.sub(lambda m: '[' + m.group(0) + ']', text) #将字符串中含有'oo'的单词用[]括起来。
更详细的内容,可以参考Python手册。
发表评论
-
列表解析和生成器表达式
2012-06-06 08:14 1444列表解析: 括在方括号 >& ... -
Python 拷贝对象(深拷贝deepcopy与浅拷贝copy)
2012-03-06 22:10 59327转自: http://www.jb51.net/article ... -
Django Meta内部类选项
2012-03-06 00:13 1632转自:http://www.onepub.net/2012/0 ... -
python --- locals()函数
2012-03-02 12:21 1483>>> help(locals) Hel ... -
python __file__ 与相对路径
2012-03-02 11:45 1496转自:http://taoyh163.blog.163.com ... -
python最常用函数
2012-03-02 10:51 6597转自:http://blog.163.com/yang ... -
Python ---- 处理Excel
2012-02-25 12:17 15511. Ubuntu下相关的库的安装: $ sudo ap ... -
python --- Python中的callable 函数
2012-02-25 11:41 8380转自: http://archive.cnblogs. ... -
Python --- __call__ (可调用对象)
2012-02-25 11:41 2158转自: http://hi.baidu.com/feng221 ... -
Python---很强悍的property,绝对的强大
2012-02-25 11:41 28894转自:http://www.cnblogs.com/lovem ... -
什么是po文件?
2012-02-25 11:40 2371转自: http://hi.baidu.com/gre ... -
Python----很强悍的API
2012-02-21 15:26 6961. Python 自带的 gettext 标准模块 & ... -
python ---- 包中的__init__.py具体用法
2012-02-21 10:51 2494The __init__.py files are requi ... -
Python ---- 各种包的收集
2012-02-21 10:52 9861. psutil 是一个 Python模块用来获取正 ... -
Python---我还不知道的寻找他用法的地方
2012-02-21 10:52 9801. exec exec('xx') 可以直接执行xx ... -
Python ---- Sets
2012-02-20 13:06 936Python also includes a data typ ... -
Python---Tuple special characteristics
2012-02-20 10:27 1102A special problem is the constr ... -
python 如此灵活的使用filter, map, reduce, sum
2012-02-18 12:22 2677Functional Programming Tools T ... -
Python表示队列
2012-02-18 11:57 1227It is also possible to use a li ... -
这么酷的lambda用法
2012-02-18 11:12 1041Lambda Forms By popular demand ...
相关推荐
Python中的re模块是专门用来进行正则表达式匹配的库。正则表达式是一种文本模式匹配工具,它描述了一种字符串匹配的规则,通常用于搜索、替换或提取字符串中符合某种模式的文本。 在Python中使用re模块,首先需要...
4. `requests`模块(非标准库,但常用):用于发送HTTP请求,是Python网络编程中的重要工具。 5. `json`模块:用于JSON(JavaScript Object Notation)数据格式的编码和解码,常用于数据交换。 6. `re`模块:提供...
【Python正则表达式re模块详解】 Python的re模块提供了强大的正则表达式处理功能,支持Perl风格的正则表达式。自Python 1.5版本以来,re模块成为标准库的一部分,替代了早期的regex模块,后者由于可读性和功能限制...
Python中的re模块可以用来处理正则表达式。例如,re.split(r':| ', 'info:xiaoZhang 33 shandong')可以用来切分字符串。 36. 怎么样在函数内修改全局变量 Python中的global语句可以用来修改全局变量。 37. 简述...
re模块主要函数的了解,对应文件:StandardLibrary10。文章:https://blog.csdn.net/yysyangyangyangshan/article/details/85149128
Python的re模块是Python标准库中的一个用于字符串匹配和处理的模块,提供了对正则表达式的支持。正则表达式是一种强大的文本处理工具,它允许用户通过定义一系列的规则来查找或匹配特定模式的字符串。 知识点1:raw...
Python中的`re`模块是一个强大的文本处理工具,它提供了正则表达式的相关功能,用于在字符串中进行模式匹配和查找。正则表达式是一种特殊的字符序列,可以用来描述复杂的字符串匹配规则。在Python中,使用`import re...
print(‘a’,’b‘,’c’) 打印多个元素处理 print(‘1+1=’,1+1) 前面字符串,后面是计算结果 print(objects, sep=’ ‘, end=’’) 打印(内容,用什么分割内容,用什么结尾) a = input(’’) ...
在Python中,我们可以使用内置的re模块来使用正则表达式。有一点需要特别注意的是,正则表达式使用\对特殊字符进行转义,比如,为了匹配字符串‘python.org),我们需要使用正则表达式'python\.org',而Python的字符...
Python的`re`模块是处理正则表达式的核心工具,提供了丰富的函数和操作符用于文本匹配、查找、替换等任务。在Python中,由于字符串字面量需要对反斜杠`\`进行转义,因此在编写正则表达式时会显得复杂。为了解决这个...
re模块下的函数 compile(pattern):创建模式对象 import re pat=re.compile('A') m=pat.search('CBA') #等价于 re.search('A','CBA') print m <_sre.SRE_Match object at 0x9d690c8> #匹配到了,返回Match...
Re模块是python的内置模块,提供了正则表达式在python中的所有用法,默认安装位置在python根目录下的Lib文件夹(如 ..\Python\Python37\Lib)。主要提供了3大类字符串操作方法: 字符查找/匹配 字符替换 字符分割...
indall函数返回的总是正则表达式在字符串中所有匹配结果的列表list,此处主要讨论列表中“结果”的展现方式,即findall中返回列表中每个元素包含的信息。 1.当给出的正则表达式中带有多个括号时,列表的元素为多个...
`re`模块提供了正则表达式功能,可以用于文本匹配和搜索,如`re.compile`编译正则模式,`search`或`findall`在文本中查找匹配项。正则表达式有许多预定义的字符类,如`\d`表示数字,`\w`表示字母数字字符,`\t`表示...
re模块提供了正则表达式操作,用于复杂的文本匹配和处理;textwrap模块可以对文本进行自动换行和填充操作。在二进制数据服务方面,struct模块可以解释二进制数据为打包的字节;codecs模块提供了编解码器注册表和基础...
为了使代码更易于理解和维护,可以将正则表达式封装到类或函数中。例如,创建一个`RegexMatcher`类,该类接受一个正则表达式作为输入,并提供匹配、查找等方法: ```python class RegexMatcher: def __init__(self...