java string 返回匹配正则的字符串的起始位置_Python 正则表达式之re.match()

387f083504e8750cafb39208c969fa2a.png

5cd86045ff003d6381721cf5aa99890a.png

点击 蓝字关注,获取更多资源~
从今天开始,小编准备用几期的文章给大家介绍一下流传已久的正则表达式,揭开其神秘面纱,小伙伴们准备好了吗?
正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。 Python 中的 re 模块,提供 Perl 风格的正则表达式模式,使 Python 语言拥有全部的正则表达式功能,也提供了与这些方法功能完全一致的函数,这些函数使用一个模式字符串做为它们的第一个参数。 本文主要介绍Python中常用的正则表达式处理函数。

re.match 函数

re.match 尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match()就返回none。函数语法:
re.match(pattern, string, flags=0)
函数参数:
pattern --- 匹配的正则表达式string --- 要匹配的字符串flags --- 标志位,用于控制正则表达式的匹配方式,如:是否区分大小写,多行匹配等等,且不同标志使用 OR(|) 连接。【见下面的可选标志】
可选标志:
re.I使匹配对大小写不敏感
re.L做本地化识别(locale-aware)匹配
re.M多行匹配,影响 ^ 和 $
re.S使 . 匹配包括换行在内的所有字符
re.U根据Unicode字符集解析字符。这个标志影响 \w, \W, \b, \B.
re.X该标志通过给予你更灵活的格式以便你将正则表达式写得更易于理解。
当匹配成功时,re.match 方法返回一个匹配的对象,否则返回None。我们可以使用group(num) 或 groups() 匹配对象函数来获取匹配表达式。
group(num=0)匹配的整个表达式的字符串,group() 可以一次输入多个组号,在这种情况下它将返回一个包含那些组所对应值的元组。
groups()返回一个包含所有小组字符串的元组,从 1 到 所含的小组号。
实例:
import re
line = "Cats are smarter than dogs"
matchObj = re.match(r'(.*) are (.*?) .*', line, re.M|re.I)
if matchObj :
print("matchObj.group() : ", matchObj.group())
print("matchObj.group() : ", matchObj.group(1))
print("matchObj.group() : ", matchObj.group(2))
else:
print("No match !!")
运行结果: 0397f3bc4fc1628a33a18364dbb1fabc.png

PS: 私信/提问/ 建议/需求 可以在本公众号直接私信,也可以参与讨论,后台可以看到的哟,有时间即会回复,偶尔的延迟和疏漏还请小伙伴们谅解,蟹蟹。 扫码关注不迷路 cd1c67410c91d29c848052ab524a50d2.png 点“在看”的,据说越来越好看???
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值