Python模块学习 re 正则表达式

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), ”, 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)omes’, 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)

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*oow*’, text);获取字符串中,包含’oo’的所有单词。
re.compile
  可以把正则表达式编译成一个正则表达式对象。可以把那些经常使用的正则表达式编译成正则表达式对象,这样可以提高一定的效率。下面是一个正则表达式对象的一个例子:

代码如下:

import re
text = “JGood is a handsome boy, he is cool, clever, and so on…”
regex = re.compile(r’w*oow*’)
print regex.findall(text) #查找所有包含’oo’的单词
print regex.sub(lambda m: ‘[‘ + m.group(0) + ‘]’, text) #将字符串中含有’oo’的单词用[]括起来。

更详细的内容,可以参考Python手册。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2305533.html

(0)
上一篇 2025年2月28日 08:35:26
下一篇 2025年2月28日 08:35:48

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • JS+Regex验证身份证号

    这次给大家带来JS+Regex验证身份证号,JS+Regex验证身份证号的注意事项有哪些,下面就是实战案例,一起来看一下。 简言 在做用户实名验证时,常会用到身份证号码的正则表达式及校验方案。本文列举了两种验证方案,大家可以根据自己的项目实…

    2025年3月31日
    100
  • 正则里B和使用详解

    这次给大家带来正则里B和使用详解,正则里B和使用的注意事项有哪些,下面就是实战案例,一起来看一下。 对于正则表达式的中B和 有些地方会出现弄不懂的情况 或许你看了下面这篇博客 你就能够对B和认识加深了 根据查看API可以知道 B和都是边界匹…

    2025年3月31日
    100
  • 在Linux内正则使用技巧

    这次给大家带来在linux内正则使用技巧,在linux内正则使用的注意事项有哪些,下面就是实战案例,一起来看一下。 1、组成 普通字符:普通字符串,没有特殊含义特殊字符:在正则表达式中具有特殊的含义正则表达式中常见的meta字符【特殊字符】…

    编程技术 2025年3月31日
    100
  • 正则表达式详细基础实例解析

    正则表达式是我们验证是经常见到的!下面我和大家一起分享一下如何更简单的理解正则表达式。首先,说一下正则名字的命名: 这个单词我想大家都会眼熟吧!“Regular Expression”。  Regular Expression的“Regul…

    编程技术 2025年3月30日
    100
  • 深入详解PHP正则表达式转义

    正则表达式是一种用于匹配字符串的强大工具,它可以方便地进行字符串操作。然而,在编写正则表达式的过程中,有时可能需要匹配一些特殊字符,如“”,“|”、“{”等,这些字符在正则表达式中具有特殊含义,需要进行转义。 PHP中提供了一些用于转义正则…

    编程技术 2025年3月30日
    100
  • 如何在PHP中使用正则表达式函数

    在php中,正则表达式是一种非常强大的工具,可用于匹配文本中的模式。php提供了许多内置函数来操作正则表达式,使其更加方便快捷。 在本文中,我们将学习如何在PHP中使用正则表达式函数,包括以下主题: 正则表达式语法preg_match函数p…

    编程技术 2025年3月30日
    100
  • PHP中如何使用正则表达式进行数据验证?

    在 php 编程中,数据验证是一个非常重要的任务。当我们接收外部输入数据(例如用户的表单提交)时,我们需要在使用这些数据之前,对其进行验证,确保其格式正确并符合我们的要求。其中一种非常实用的验证方式就是使用正则表达式。 正则表达式是一种强大…

    编程技术 2025年3月30日
    100
  • PHP语言开发中如何避免正则表达式错误处理?

    php是一门广泛使用的编程语言,其强大的正则表达式功能是开发人员广泛使用的工具之一。正则表达式可以用来匹配、搜索和替换字符串,它具有强大的表达能力和快速的运行速度。然而,正则表达式也有其缺陷和限制,而且在开发过程中出现错误处理问题也是很常见…

    编程技术 2025年3月30日
    100
  • Java语言正则表达式的使用方法

    java语言正则表达式的使用方法 正则表达式是一种强大的文本处理工具,可以用来匹配和验证文本。在Java语言中,也可以使用正则表达式来实现字符串的匹配和处理。本文将介绍java语言正则表达式的使用方法,涵盖正则表达式的基础知识,常用的正则表…

    编程技术 2025年3月30日
    100
  • 正则表达式函数,让你更好地处理文本

    正则表达式(regular expression)是一种用于匹配文本模式的工具,通过一些特定的语法规则,可以在文本中搜索和匹配符合要求的内容,这种搜索技术被广泛应用于文本处理、编程、数据清洗等领域。 在实际的文本处理中,常常需要抽取符合特定…

    编程技术 2025年3月30日
    100

发表回复

登录后才能评论