Python正则表达式如何匹配子串

开发 后端
Python正则表达式在进行子串匹配的时候需要注意很多的问题,首先我们来看看如何获取Python正则表达式中匹配的子串。

Python正则表达式有很多的时候需要我们进行子串的匹配,不单在进行替换的时候需要进行,在很多的地方都会用到这些代码。下面我们就来详细的学习如何用Python正则表达式获取自己想得到的匹配子串。

获取Python正则表达式所匹配的子串(Get the part of a string matched by the regex)

 

  1. regex=ur"..." #正则表达式  
  2. match = re.search(regex, subject)  
  3. if match:  
  4. result = match.group()  
  5. else:  
  6. result = "" 

获取捕获组所匹配的子串(Get the part of a string matched by a capturing group)

 

  1. regex=ur"..." #正则表达式  
  2. match = re.search(regex, subject)  
  3. if match:  
  4. result = match.group(1)  
  5. else:  
  6. result = "" 

获取有名组所匹配的子串(Get the part of a string matched by a named group)

 

  1. regex=ur"..." #正则表达式  
  2. match = re.search(regex, subject)  
  3. if match:  
  4. result = match.group("groupname")  
  5. else:  
  6. result = "" 

将字符串中所有匹配的子串放入数组中(Get an array of all regex matches in a string)

 

  1. reresult = re.findall(regex, subject) 

遍历所有匹配的子串(Iterate over all matches in a string)

 

  1. for match in re.finditer(r"<(.*?)\s*.*?/\1>", subject)  
  2. # match start: match.start()  
  3. # match end (exclusive): match.end()  
  4. # matched text: match.group() 

通过Python正则表达式 字符串创建一个正则表达式对象(Create an object to use the same regex for many operations)

 

  1. rereobj = re.compile(regex) 

用法1的Python正则表达式对象版本(use regex object for if/else branch whether (part of) a string can be matched)

 

  1. rereobj = re.compile(regex)  
  2. if reobj.search(subject):  
  3. do_something()  
  4. else:  
  5. do_anotherthing() 

用法2的Python正则表达式对象版本(use regex object for if/else branch whether a string can be matched entirely)

 

  1. rereobj = re.compile(r"\Z") #正则表达式末尾以\Z 结束  
  2. if reobj.match(subject):  
  3. do_something()  
  4. else:  
  5. do_anotherthing() 

以上就是对Python正则表达式在获取匹配子串应用的介绍。

【编辑推荐】

  1. Python字符串替换如何才能进行字符的拆分
  2. Python文本乱码发生时的解决方案
  3. Python编程语言总体性能优点评测
  4. Python编程语言具有相当高的适应能力
  5. Python编程语言维和受到众人的追捧
责任编辑:张浩 来源: CSDN
相关推荐

2009-09-16 16:22:04

正则表达式匹配

2009-09-16 17:02:15

正则表达式匹配字符串

2009-09-16 18:08:14

正则表达式匹配单词

2010-07-21 10:43:25

Perl正则表达式匹配

2010-03-10 18:57:53

Python正则表达式

2024-09-14 09:18:14

Python正则表达式

2021-01-27 11:34:19

Python正则表达式字符串

2010-03-04 15:20:20

Ubuntu Patt

2021-05-25 09:18:04

正则表达式Linux字符串

2010-03-25 18:25:36

Python正则表达式

2024-12-25 15:09:38

Python字符串函数

2018-09-27 15:25:08

正则表达式前端

2009-09-16 16:48:03

正则表达式匹配数字

2009-09-16 13:24:30

PHP正则表达式匹配

2021-12-03 08:50:25

LeetCode正则表达式算法

2020-09-04 09:16:04

Python正则表达式虚拟机

2009-08-14 17:44:46

C#中使用正则表达式匹

2010-03-11 08:55:45

python正则表达式

2010-03-01 15:51:59

Python则表达式

2019-12-10 10:40:57

Python正则表达式编程语言
点赞
收藏

51CTO技术栈公众号