正向回顾与非捕获组:不同的行为

2024-01-08

我使用 python 正则表达式(remodule) 在我的代码中并注意到在这些情况下的不同行为:

re.findall(r'\s*(?:[a-z]\))?[^.)]+', 'a) xyz. b) abc.') # non-capturing group
# results in ['a) xyz', ' b) abc']

and

re.findall(r'\s*(?<=[a-z]\))?[^.)]+', 'a) xyz. b) abc.') # lookbehind
# results in ['a', ' xyz', ' b', ' abc']

我需要得到的只是['xyz', 'abc']。为什么这些示例的行为不同以及如何获得所需的结果?


原因a and b都包含在第二种情况是因为(?<=[a-z]\))首先会找到a)因为环顾四周不会消耗你的任何角色back在字符串的开头。现在[^.)]+火柴a

现在你在).既然你已经做了(?<=[a-z]\))选修的[^.)]+火柴xyz

重复同样的事情b) abc

remove ?从第二种情况,你会得到预期的结果,即['xyz', 'abc']

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

正向回顾与非捕获组:不同的行为 的相关文章

  • 如何避免使用 python 处理空的标准输入?

    The sys stdin readline 返回之前等待 EOF 或新行 所以如果我有控制台输入 readline 等待用户输入 相反 我想打印帮助并在没有需要处理的情况下退出并显示错误 而不是等待用户输入 原因 我正在寻找一个Pytho
  • 获取 .wav 文件长度或持续时间

    我正在寻找一种方法来找出 python 中音频文件 wav 的持续时间 到目前为止我已经了解了 pythonwave图书馆 mutagen pymedia pymad我无法获取 wav 文件的持续时间 Pymad给了我持续时间 但它不一致
  • 此 TypeError 消息中提到的“代码对象”是什么?

    在尝试使用Python时exec声明 我收到以下错误 TypeError exec arg 1 must be a string file or code object 我不想传递字符串或文件 但什么是代码对象 如何创建一个 创建代码对象的
  • 在Python中从大文件中搜索单词列表

    我是新蟒蛇 我有一个单词列表和一个非常大的文件 我想删除文件中包含单词列表中的单词的行 单词列表按排序给出 并且可以在初始化期间输入 我正在努力寻找解决这个问题的最佳方法 我现在正在进行线性搜索 这花费了太多时间 有什么建议么 您可以使用i
  • 无法在 selenium 和 requests 之间传递 cookie,以便使用后者进行抓取

    我用 python 结合 selenium 编写了一个脚本来登录网站 然后从driver to requests这样我就可以继续使用requests进行进一步的活动 I used item soup select one div class
  • 如何过滤 Pandas GroupBy 对象并获取 GroupBy 对象?

    当对 Pandas groupby 操作的结果执行过滤时 它返回一个数据帧 但假设我想执行进一步的分组计算 我必须再次调用 groupby 这似乎有点绕 有更惯用的方法吗 EDIT 为了说明我在说什么 我们无耻地从 Pandas 文档中窃取
  • 使用 Paramiko 进行 DSA 密钥转发?

    我正在使用 Paramiko 在远程服务器上执行 bash 脚本 在其中一些脚本中 存在与其他服务器的 ssh 连接 如果我只使用 bash 不使用 Python 我的 DSA 密钥将被第一个远程服务器上的 bash 脚本转发并使用 以连接
  • Python Tkinter 模块不显示输出

    我正在尝试学习 Python 并尝试使用 Python 中的 GUI 并遇到了这个 Tkinter 模块 我的代码运行 但运行时窗口没有出现 我的代码如下 from Tkinter import to create a root windo
  • 在Python上获取字典的前x个元素

    我是Python的新手 所以我尝试用Python获取字典的前50个元素 我有一本字典 它按值降序排列 k 0 l 0 for k in len dict d l 1 if l lt 51 print dict 举个小例子 dict d m
  • Paste.httpserver 并通过 HTTP/1.1 Keep-alive 减慢速度;使用 httperf 和 ab 进行测试

    我有一个基于paste httpserver 的Web 服务器作为HTTP 和WSGI 之间的适配器 当我使用 httperf 进行性能测量时 如果每次使用 num conn 启动一个新请求 我每秒可以执行超过 1 000 个请求 如果我使
  • python中basestring和types.StringType之间的区别?

    有什么区别 isinstance foo types StringType and isinstance foo basestring 对于Python2 basestring是两者的基类str and unicode while type
  • 查找 Pandas DF 行中的最短日期并创建新列

    我有一个包含多个日期的表 有些日期将为 NaN 我需要找到最旧的日期 所以一行可能有 DATE MODIFIED WITHDRAWN DATE SOLD DATE STATUS DATE 等 因此 对于每一行 一个或多个字段中都会有一个日期
  • 从 Flask 运行 NPM 构建

    我有一个 React 前端 我想在与我的 python 后端 API 相同的源上提供服务 我正在尝试使用 Flask 来实现此目的 但我遇到了 Flask 找不到我的静态文件的问题 我的前端构建是用生成的npm run build in s
  • 是否需要关闭没有引用它们的文件?

    作为一个完全的编程初学者 我试图理解打开和关闭文件的基本概念 我正在做的一项练习是创建一个脚本 允许我将内容从一个文件复制到另一个文件 in file open from file indata in file read out file
  • 在骨架图像中查找线 OpenCV python

    我有以下图片 我想找到一些线来进行一些计算 平均长度等 我尝试使用HoughLinesP 但它找不到线 我能怎么做 这是我的代码 sk skeleton mask rows cols sk shape imgOut np zeros row
  • 使用 Python 将连续日期分组在一起

    Given dates datetime 2014 10 11 datetime 2014 10 1 datetime 2014 10 2 datetime 2014 10 3 datetime 2014 10 5 datetime 201
  • 如何指示 urwid 列表框的项目数多于当前显示的项目数?

    有没有办法向用户显示 urwid 列表框在显示部分上方 下方有其他项目 我正在考虑类似滚动条的东西 它可以显示条目的数量 或者列表框顶部 底部的单独栏 如果这个行为无法实现 有哪些方法可以实现这个通知 在我的研究过程中 我发现这个问题 ht
  • 检测是否从psycopg2游标获取?

    假设我执行以下命令 insert into hello username values me 我跑起来就像 cursor fetchall 我收到以下错误 psycopg2 ProgrammingError no results to fe
  • 如何编写一个接受 int 或 float 的 C 函数?

    我想用 C 语言创建一个扩展 Python 的函数 该函数可以接受 float 或 int 类型的输入 所以基本上 我想要f 5 and f 5 5 成为可接受的输入 我认为我不能使用if PyArg ParseTuple args i v
  • 用于插入或替换 URL 参数的 Django 模板标签

    有人知道 Django 模板标签可以获取当前路径和查询字符串并插入或替换查询字符串值吗 例如向 some custom path q how now brown cow page 3 filter person 发出请求 电话 urlpar

随机推荐

  • 排除在 TypeScript 中监视的目录

    watch是开发过程中的一个巧妙的功能 但是 在我的应用程序中 我将文件上传到名为的目录tmp 每当文件上传到此目录时 我的应用程序都会重新编译 这会导致各种问题 我想排除tmp免遭监视 到目前为止我尝试过添加tmp to the excl
  • Python 在 Javascript / jQuery 中的部分等效

    Python 的等价物是什么functools partial https docs python org 2 library functools html functools partial在 JavaScript 或 jQuery 中
  • 未找到 IPython 命令 OSX 终端。点安装

    使用通过自制程序安装的 Python 2 7 然后我使用 pip 安装 IPython 因此 IPython 似乎安装在 usr local lib python2 7 site packages 我认为这是真的 因为有一个 IPython
  • 如何保护 ASP.NET_SessionId cookie 的安全?

    我已将 ASPXAUTH cookie 设置为仅 https 但我不确定如何有效地对 ASP NET SessionId 执行相同操作 整个站点使用 HTTPS 因此 cookie 无需同时适用于 http 和 https 要添加 secu
  • 为什么“queueInputBuffer”中的“MediaCodec CodecException”仅发生在 Android API 29 上?

    基本信息 目标SDK版本28 Goal 课程的目标是在发送到我的服务器之前调整视频大小 Problem 应用程序仅在 API 29 上崩溃 无论是使用真实设备还是使用 AVD 例如 该代码可以正常工作像素 2 API 28 但不是在像素 2
  • 使用 CoreText 显示 NSAttributedString

    我听说我可以使用 CoreText 显示 NSAttributedString 有人能告诉我如何 最简单的方法 吗 请不要使用 CATextLayer 或 OHAttributedLabel 进行回答 我知道这个论坛有很多关于这个的问题 但
  • webdriver.Dispose()、.Close() 和 .Quit() 之间的区别

    这些有什么区别 Webdriver Close Webdriver Quit Webdriver Dispose 何时使用哪一个 这是一个很好的问题 我见过人们在不应该使用 Close 的情况下使用 Close 我查看了 Selenium
  • 在 VBA 中触发完整计算

    给定一个包含大量公式的工作簿 我意识到当其单元格值是最新的时 F9 ActiveWorkbook Calculate or Sheets 1 calculate不会触发重新计算 但是 如果另一个单元格通过公式引用的单元格值发生变化 F9 A
  • rand() 即使在 srand(time(NULL)) 之后也不会生成随机数

    我正在尝试使用循环调用类函数 for int i 0 i lt Basket getLemonNum i lemonWeights i Fruit generateWeight fruit fruitWeight cout lt lt le
  • Kendo UI Web 和 Kendo UI ASP.NET for MVC 之间的区别

    通过 Visual Studio 创建 MVC 项目时 视图是使用 cshtml 文件创建的 KendoUI Server Wrappers 在视图中有一个模型 而 KendoUI Web 不仅没有任何模型 而且没有 cshtml 文件 仅
  • 使用 raise_application_error 的 PL SQL 触发器会引发错误。

    我有一些代码需要帮助调试 但我觉得如果我能让其中一个运行 我就能得到其余的 哦 我多么希望 create or replace trigger minimumwage before insert or update on Employee
  • BLE 设备可以充当信标吗

    这可能是一个错误的问题 但只需要知道这是否可行 对于我们的一款 BLE 设备 制造商数据是使用使用 peripheral advertisement manufacturerData manufacturerData
  • Json 架构文件不会在 BigQuery Python API 中执行

    我在使用 Bigquery Python API 时遇到问题 这是我执行脚本时的堆栈跟踪 Traceback most recent call last File createTable py line 17 in
  • 当目标(后端)应用程序在同一 EC2 的多个端口上运行时的 AWS ELB

    我有 2 个相同 Web 应用程序的实例在端口 8080 和 8081 上运行 我需要使用 ALB CLB 进行负载平衡 这在旧的 apache Web 服务器中曾经是一件简单的事情 要求是对下面的实例进行负载平衡 实例 1 Web 应用程
  • 在图像上使用文本塑造形状

    所以我想使用 CSS 在图像上放置一个三角形 确切地说是一个包含一些文本的三角形 像这样的事情 https sketch io render sk 11fa7e2aeba09cb08372f831f84d9af2 jpeg https sk
  • 在React JS中实现状态变化时的过渡效果

    我的 React 页面上有一张图像 当状态更新为新图像时我想执行以下过渡效果 原始图像应该放大和淡出 新图像还应该放大和淡入 效果应该类似于穿过墙壁到达新场景 我怎样才能在 React 中做到这一点 正如 pgsandstrom 提到的 反
  • 使
  • 元素拉伸得比包含的
  • 目前 我正在开发一个工作布局 但我对动态下拉菜单有点困惑 我在 li 元素中使用子 ul 该元素将显示导航链接的子项 但上面的 li 因此是主要的 您将鼠标悬停在其上以查看子项 延伸到 ul 的长度 当然是由其中的 li 元素的宽度定义的
  • 如何使用KeyEventDispatcher

    我一直在尝试制作一个 Pong 克隆作为初学者的项目 但我遇到了障碍 我已经设法达到键盘支持的目的 但是键盘重复延迟开始出现 我还没有找到任何可用的方法来使用 KeyEventDispatcher 它甚至不会启动dispatchKeyEve
  • 使用 boto3 列出 100 多个堆栈

    我们需要列出所有处于 CREATE COMPLETE 状态的堆栈 在我们的 AWS 账户中 我们有超过 400 个这样的堆栈 我们为此编写了以下代码 stack session session client cloudformation l
  • 正向回顾与非捕获组:不同的行为

    我使用 python 正则表达式 remodule 在我的代码中并注意到在这些情况下的不同行为 re findall r s a z a xyz b abc non capturing group results in a xyz b ab