#!/usr/bin/python
#-*- coding:utf-8 -*-
'''
Created on 2016年6月25日
@author: Administrator
'''
'''
Python高级编程---正则表达式
#http://www.runoob.com/python/python-reg-expressions.html
'''
import re
#re.match(pattern, string, flags)
'''
参数说明:
pattern:匹配的正则表达式
string:要匹配的字符串
flags:标志位,用于控制正则表达式的匹配方式
匹配对象方法:
group(num=0):匹配的整个表达式的字符串,group() 可以一次输入多个组号,在这种情况下它将返回一个包含那些组所对应值的元组。
groups():返回一个包含所有小组字符串的元组,从 1 到 所含的小组号。
'''
#实例一
def examp01():
#在起始位置匹配
print(re.match('www', 'www.runoob.com').span())
#不在起始位置匹配
print(re.match('com', 'www.runoob.com'))
#实例二
def examp02():
line = "Cats are smarter then dogs dogs2"
#re.match() :只匹配字符串的开始,如果字符串开始不符合正则表达式,则匹配失败,函数返回None
matchObj = re.match(r'(.*) are (.*?) .*', line, re.M|re.I)
if matchObj:
print "matchObj.group():", matchObj.group()
print "matchObj.groups():", matchObj.groups()
print "matchObj.group(1):", matchObj.group(1,2)
print "matchObj.group(2):", matchObj.group(2)
else:
print "No match!"
#re.search():匹配整个字符串,直到找到一个匹配。
matchObj = re.search(r'dogs', line, re.M|re.I)
if matchObj:
print "search----> matchObj.group():", matchObj.group()
else:
print "No match"
#检索和替换
#re.sub(pattern, repl, string, count, flags)
def examp03():
phone = "2004-959-559 # This is Phone Number"
num = re.sub(r'#.*$', "", phone)
print "Phone Num:" , num
#将任意非数字替换为 空
num = re.sub(r'\D', "", phone)
print "Phone Num:" , num
#正则表达式,可选标志位
'''
re.I 使匹配对大小写不敏感
re.L 做本地化识别(locale-aware)匹配
re.M 多行匹配,影响 ^ 和 $
re.S 使 . 匹配包括换行在内的所有字符
re.U 根据Unicode字符集解析字符。这个标志影响 \w, \W, \b, \B.
re.X 该标志通过给予你更灵活的格式以便你将正则表达式写得更易于理解。
'''
if __name__ == '__main__':
examp03()
-------2016-06-25 10:00
@modaokeng.yongtaixincun.baiyunqu.guangzhoushi.guangdongsheng
分享到:
相关推荐
06-正则表达式(python和linux高级编程阶段 代码和截图)06-正则表达式(python和linux高级编程阶段 代码和截图)06-正则表达式(python和linux高级编程阶段 代码和截图)06-正则表达式(python和linux高级编程阶段 ...
Python正则表达式是Python编程语言中用于处理文本的强大工具,它允许程序员高效地搜索、匹配、替换符合特定模式的字符串。深入理解Python正则表达式对于任何希望在数据处理、文本分析或网络爬虫等领域工作的开发者来...
总的来说,掌握Python中的字符串处理和正则表达式是任何Python开发者必备的技能,无论是在数据处理、文本分析还是网络爬虫等领域都有广泛应用。通过清华大学的精品课程,学习者可以系统地学习并掌握这些重要的编程...
Python正则表达式是Python编程语言中用于处理字符串的强大工具,它允许程序员高效地进行文本匹配、搜索、替换等操作。在Python中,正则表达式主要通过`re`模块来实现。本指南将深入探讨Python正则表达式的基础概念、...
- **正则表达式本质**: 正则表达式(Regular Expression, RE)是一种用于定义字符串集合的小型编程语言,内嵌于Python中,并通过`re`模块实现。用户可以通过正则表达式来指定想要匹配的字符串集合的规则。 - **应用...
正则表达式是一种强大的文本处理工具,在Python编程中广泛应用于文本搜索、替换等操作。它能够帮助开发者快速定位、提取或者替换文本中的特定模式。本文将重点介绍Python中常用的正则表达式及其应用场景。 #### ...
Python正则表达式是Python编程语言中的一个强大工具,它用于处理字符串,通过模式匹配来查找、替换或提取文本信息。在Python中,正则表达式主要由`re`模块提供支持。本教程将深入探讨Python正则表达式的七种核心功能...
在Python中,正则表达式提供了更多高级功能,如非贪婪匹配、分组、后向引用等,可以进行更复杂的模式匹配和字符串操作。Python的`re`模块提供了`search()`, `match()`, `findall()`, `sub()`等方法来执行正则表达式...
- **Python**:Python 中的 `re` 模块提供了正则表达式的功能。 - **JavaScript**:JavaScript 也内置了正则表达式的支持。 - **grep/egrep**:Unix/Linux 下的命令行工具,用于在文件中搜索匹配正则表达式的行。 #...
Python作为一门广泛使用的编程语言,内置了强大的正则表达式支持。本教程旨在帮助初学者在30分钟内对Python中的正则表达式有一个基本的认识。 一、本文目标 本教程的目标是让读者快速理解正则表达式的概念,学会...
Python正则表达式是Python编程语言中的一个强大工具,它用于处理字符串,执行模式匹配和文本提取。在Python中,正则表达式主要用于处理文本数据,例如从日志文件中提取特定信息,验证用户输入,或者从网页内容中抓取...
Python正则表达式是Python编程语言中的一个强大工具,用于处理文本模式匹配和字符串操作。在本教程中,我们将深入探讨Python正则表达式的各个方面,从基础概念到高级技巧,通过200多个实例帮助你从初级阶段逐渐提升...
正则表达式在Python编程中扮演着重要角色,无论是在数据处理、文本分析还是网页抓取等方面都有广泛的应用。通过学习和掌握正则表达式,开发者能够更高效地处理字符串,提升代码的灵活性和效率。结合实际案例和练习,...
1. **Python开发语言**: Python是一种高级编程语言,以其简洁明了的语法和强大的功能而受到全球开发者喜爱。Python适用于各种应用领域,包括Web开发、数据分析、机器学习、网络编程等。在本教程中,学习者将从基础...
Python还广泛应用于数据处理和分析,书中对这一领域进行了初步探讨,包括正则表达式用于数据提取,以及使用os和sys模块进行系统交互。此外,书中还涉及了简单数据库操作,如SQLite,以及XML和JSON数据格式的处理。 ...
Python正则表达式,也称为Regular Expression,在编程领域中是一种强大的文本处理工具,它能用于查找、替换或者提取符合特定模式的字符串。Python内置了`re`模块来支持正则表达式操作,使得在Python中使用正则表达式...
- **Perl兼容正则表达式(PCRE)**:Perl语言的正则表达式实现,被广泛应用于PHP、Python等多种编程语言中。 - **Java中的正则表达式**:Java提供了java.util.regex包来支持正则表达式的使用。 - **JavaScript中的正则...