当需要匹配多个字符串其中之一时,如:匹配 你|我|她|他 四个字符串之一时,使用非元组捕获语。

(?:exp)

例子:

import re
content2 = "我市政协“我爱协商”新平台建设工作的加强与落实,搭建“协商在民主”新模式,推进“协商朋友圈”协商议事平台"
regex2 = re.compile("(?:探索|政协|推进|搭建)“.*?”(?:工作|协商议事平台|新模式|新平台)")
x2 = regex2.findall(content2)
print(x2)>>> ['政协“我爱协商”新平台', '搭建“协商在民主”新模式', '推进“协商朋友圈”协商议事平台']
>>> 3
字符 描述
(pattern) 匹配 pattern 并获取这一匹配。所获取的匹配可以从产生的 Matches 集合得到,在VBScript 中使用 SubMatches 集合,在JScript 中则使用 $0…$9 属性。要匹配圆括号字符,请使用 ‘(’ 或 ‘)’。
(?:pattern) 匹配 pattern 但不获取匹配结果,也就是说这是一个非获取匹配,不进行存储供以后使用。这在使用 “或” 字符 (
(?=pattern) 正向肯定预查(look ahead positive assert),在任何匹配pattern的字符串开始处匹配查找字符串。这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用。例如,"Windows(?=95
(?!pattern) 正向否定预查(negative assert),在任何不匹配pattern的字符串开始处匹配查找字符串。这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用。例如"Windows(?!95
(?<=pattern) 反向(look behind)肯定预查,与正向肯定预查类似,只是方向相反。简单说,以(?<=pattern)xxx为例,就是捕获以pattern开头的内容xxx。例如,"(?<=95
(?<!pattern) 反向否定预查,与正向否定预查类似,只是方向相反。例如"(?<!95

【Python技巧】正则表达式:(?:)匹配多个字符串之一;(非获取匹配)相关推荐

  1. php 匹配非数字,正则表达式 - 获取匹配和非获取匹配

    在使用正则表达式的时候,我们经常会使用括号()把某个部分括起来,称为一个子模式. 子模式有Capturing和Non-Capturing两种情况. Capturing指获取匹配,是指系统会在幕后将所有 ...

  2. python的正则表达式 re-------可以在字符串前加上 r 这个前缀来避免部分疑惑,因为 r 开头的python字符串是 raw 字符串,所以里面的所有字符都不会被转义...

    正则表达式使用反斜杆(\)来转义特殊字符,使其可以匹配字符本身,而不是指定其他特殊的含义.这可能会和python字面意义上的字符串转义相冲突,这也许有些令人费解.比如,要匹配一个反斜杆本身,你也许要用 ...

  3. Python根据正则表达式找到相应的字符串然后进行替换

    原数据内容如下: # hsCodehsCode = xml_data.xpath('//*[@id="hsCode"]/@value')if len(hsCode) > 0: ...

  4. javascript间接实现前端非获取匹配,保留带某前缀的子串不执行替换

    <!DOCTYPE html> <html> <head> <script type="text/javascript">var s ...

  5. 匹配正则_程序员入门基础:python正则表达式贪婪匹配和非贪婪匹配

    此文为python正则表达式的高阶入门,正则基础入门请参考程序员入门基础:python的正则表达式. 一.贪婪匹配和非贪婪匹配 举例说明概念: print('非贪婪匹配',re.search('el+ ...

  6. python中正则表达式的默认匹配方式为_Python模式匹配与正则表达式

    1.1 不用正则表达式来匹配文本 假设我希望在一个字符串中找到电话号码,电话号码的格式为三个数字,一个短横线,四个数字,一个短横线,四个数字 比如:131-3310-5293和132-2670-986 ...

  7. python 正则 匹配任意字符串_python中正则匹配

    写代码时候,不管是爬虫,还是获取某些特定的资源,我们需要写正则表达式. 因为不常用,有些语法生疏.有时明明觉得自己的语法可以,可就是不行. 正则表达式是一种文本模式,包括普通字符(例如,a 到 z 之 ...

  8. Python中正则表达式对单个字符,多个字符,匹配边界等使用

    Regular Expression,正则表达式,又称正规表示式.正规表示法.正则表达式.规则表达式.常规表示法(英语:Regular Expression,在代码中常简写为regex.regexp或 ...

  9. 7.python之正则表达式re模块

    一.正则表达式中常用元字符的复习. 通配符系列 .(点)匹配任意一个除换行符以外的字符. *(星号)用来匹配*星号前面的字符或者一组字符0到无穷次.可以写为0 +(加号)匹配加号前面的一个字符或者一组 ...

最新文章

  1. 3d 行为树编辑器_cocos creator主程入门教程——有限状态机和行为树
  2. webpack配置vue组件加载器
  3. Review Python Numpy 数组的初始化和基本操作
  4. 嵩天-Python语言程序设计程序题--第七周:文件和数据格式化
  5. springboot初始化逻辑_SpringBoot——启动初始化数据
  6. 黑客秘笈-渗透测试实用指南 第三版
  7. 甲骨文中国疯狂裁员 招聘网站上线“甲骨文人才专场”
  8. Spring_day3
  9. kafka的c/c++高性能客户端librdkafka简介/使用librdkafka的C++接口实现简单的生产者和消费者
  10. HIbernate学习笔记5 之 查询
  11. new与delete函数使用方法以及注意事项
  12. linux下安装打字软件,linux系统指法练习与打字游戏软件
  13. 阮一峰ES6入门学习笔记~~变量的解构赋值
  14. (微信小程序)微信小程序-毕设级项目搭建-微信小程序商城(内含源码,微信小程序+java逻辑后台+vue管理系统)
  15. seafile专业版集成微软的office online实现在线协同编辑
  16. 像素越多越好?像元的面积越小越好?为何底大一级压死人?
  17. UFS系列三:UFS数据包UPIU
  18. 绩效考核过程中会遇到的问题
  19. 计算机考研和不考研的区别,考研和不考研有什么区别?问清楚自己考研动机
  20. 一个智能省心的空空java代码生成平台上线了——前后端代码生成

热门文章

  1. HTML实现图片点击放大效果
  2. xampp linux 设置密码,Linux下安装xampp
  3. Vue 动态加载public图片和图片预览例子
  4. idea新建maven工程没有artifacts
  5. 最长子序列(LCS, LIS, LCIS)
  6. Python快速搭建网站
  7. 「网络安全」Web防火墙和下一代防火墙的区别
  8. 几篇神经网络训练语言模型文章的阅读
  9. 关于短视频技术轮廓探讨
  10. Java常用设计模式(一)