Python 正则表达式 findall

2024-05-04

我正在尝试使用 Python 2.7.2 中的正则表达式从字符串中提取所有出现的标记单词。或者简单地说,我想提取其中的每一段文本[p][/p]标签。 这是我的尝试:

regex = ur"[\u005B1P\u005D.+?\u005B\u002FP\u005D]+?"
line = "President [P] Barack Obama [/P] met Microsoft founder [P] Bill Gates [/P], yesterday."
person = re.findall(pattern, line)

印刷person产生['President [P]', '[/P]', '[P] Bill Gates [/P]']

获得的正确正则表达式是什么:['[P] Barack Obama [/P]', '[P] Bill Gates [/p]'] or ['Barrack Obama', 'Bill Gates'].


import re
regex = ur"\[P\] (.+?) \[/P\]+?"
line = "President [P] Barack Obama [/P] met Microsoft founder [P] Bill Gates [/P], yesterday."
person = re.findall(regex, line)
print(person)

yields

['Barack Obama', 'Bill Gates']

正则表达式ur"[\u005B1P\u005D.+?\u005B\u002FP\u005D]+?"是完全一样的 统一码为u'[[1P].+?[/P]]+?'除了更难阅读。

第一个括号内的组[[1P] tells re http://docs.python.org/library/re.html#module-re列表中的任何字符['[', '1', 'P']应该匹配,并且与第二个括号组类似[/P]].那根本不是你想要的。所以,

  • 删除外部方括号。 (同时删除 流浪1在...前面P.)
  • 为了保护中的文字括号[P],用 a 转义括号 反斜杠:\[P\].
  • 要仅返回标签内的单词,请放置分组括号 大约.+?.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python 正则表达式 findall 的相关文章

  • 使用特定的类/函数预加载 Jupyter Notebook

    我想预加载一个笔记本 其中包含我在另一个文件中定义的特定类 函数 更具体地说 我想用 python 来做到这一点 比如加载一个配置文件 包含所有相关的类 函数 目前 我正在使用 python 生成笔记本并在服务器上自动启动它们 因为不同的
  • Python 中的哈希映射

    我想用Python实现HashMap 我想请求用户输入 根据他的输入 我从 HashMap 中检索一些信息 如果用户输入HashMap的某个键 我想检索相应的值 如何在 Python 中实现此功能 HashMap
  • 安装了 32 位的 Python,显示为 64 位

    我需要运行 32 位版本的 Python 我认为这就是我在我的机器上运行的 因为这是我下载的安装程序 当我重新运行安装程序时 它会将当前安装的 Python 版本称为 Python 3 5 32 位 然而当我跑步时platform arch
  • 将html数据解析成python列表进行操作

    我正在尝试读取 html 网站并提取其数据 例如 我想查看公司过去 5 年的 EPS 每股收益 基本上 我可以读入它 并且可以使用 BeautifulSoup 或 html2text 创建一个巨大的文本块 然后我想搜索该文件 我一直在使用
  • Pandas/Google BigQuery:架构不匹配导致上传失败

    我的谷歌表中的架构如下所示 price datetime DATETIME symbol STRING bid open FLOAT bid high FLOAT bid low FLOAT bid close FLOAT ask open
  • 处理 Python 行为测试框架中的异常

    我一直在考虑从鼻子转向行为测试 摩卡 柴等已经宠坏了我 到目前为止一切都很好 但除了以下之外 我似乎无法找出任何测试异常的方法 then It throws a KeyError exception def step impl contex
  • Perl 正则表达式图灵完备吗?

    我见过 Ruby 和 Perl 程序员做了一些事情复杂的代码挑战 https codegolf stackexchange com questions 3596 regex validating regex完全用正则表达式 这前瞻和后瞻 h
  • Pandas 日期时间格式

    是否可以用零后缀表示 pd to datetime 似乎零被删除了 print pd to datetime 2000 07 26 14 21 00 00000 format Y m d H M S f 结果是 2000 07 26 14
  • 使用 kivy textinput 的 'input_type' 属性的问题

    您好 我在使用 kivy 的文本输入小部件的 input type 属性时遇到问题 问题是我制作了两个自定义文本输入 其中一个称为 StrText 其中设置了 input type text 然后是第二个文本输入 名为 NumText 其
  • 在Python中连接反斜杠

    我是 python 新手 所以如果这听起来很简单 请原谅我 我想加入一些变量来生成一条路径 像这样 AAAABBBBCCCC 2 2014 04 2014 04 01 csv Id TypeOfMachine year month year
  • 如何将张量流模型部署到azure ml工作台

    我在用Azure ML Workbench执行二元分类 到目前为止 一切正常 我有很好的准确性 我想将模型部署为用于推理的 Web 服务 我真的不知道从哪里开始 azure 提供了这个doc https learn microsoft co
  • 为什么 PyYAML 花费这么多时间来解析 YAML 文件?

    我正在解析一个大约 6500 行的 YAML 文件 格式如下 foo1 bar1 blah name john age 123 metadata whatever1 whatever whatever2 whatever stuff thi
  • 在 Sphinx 文档中*仅*显示文档字符串?

    Sphinx有一个功能叫做automethod从方法的文档字符串中提取文档并将其嵌入到文档中 但它不仅嵌入了文档字符串 还嵌入了方法签名 名称 参数 我如何嵌入only文档字符串 不包括方法签名 ref http www sphinx do
  • 如何通过索引列表从 dask 数据框中选择数据?

    我想根据索引列表从 dask 数据框中选择行 我怎样才能做到这一点 Example 假设我有以下 dask 数据框 dict A 1 2 3 4 5 6 7 B 2 3 4 5 6 7 8 index x1 a2 x3 c4 x5 y6 x
  • Jupyter Notebook 找不到 Python 模块

    不知道发生了什么 但每当我使用 ipython 氢 原子 或 jupyter 笔记本时都找不到任何已安装的模块 我知道我安装了 pandas 但笔记本说找不到 我应该补充一点 当我正常运行脚本时 python script py 它确实导入
  • Python3 在 DirectX 游戏中移动鼠标

    我正在尝试构建一个在 DirectX 游戏中执行一些操作的脚本 除了移动鼠标之外 我一切都正常 是否有任何可用的模块可以移动鼠标 适用于 Windows python 3 Thanks I used pynput https pypi or
  • 使用特定颜色和抖动在箱形图上绘制数据点

    我有一个plotly graph objects Box图 我显示了箱形 图中的所有点 我需要根据数据的属性为标记着色 如下所示 我还想抖动这些点 下面未显示 Using Box我可以绘制点并抖动它们 但我不认为我可以给它们着色 fig a
  • 为什么 Pickle 协议 4 中的 Pickle 文件是协议 3 中的两倍,而速度却没有任何提升?

    我正在测试 Python 3 4 我注意到 pickle 模块有一个新协议 因此 我对 2 个协议进行了基准测试 def test1 pickle3 open pickle3 wb for i in range 1000000 pickle
  • 如何在 pygtk 中创建新信号

    我创建了一个 python 对象 但我想在它上面发送信号 我让它继承自 gobject GObject 但似乎没有任何方法可以在我的对象上创建新信号 您还可以在类定义中定义信号 class MyGObjectClass gobject GO
  • 将 Python 中的日期与日期时间进行比较

    所以我有一个日期列表 datetime date 2013 7 9 datetime date 2013 7 12 datetime date 2013 7 15 datetime date 2013 7 18 datetime date

随机推荐

  • 绑定到 ListView 项目从视图模型中点击的属性

    我正在尝试使用 itemtapped 属性将事件绑定到菜单页面上的 ListView 目前我在我的应用程序中使用 MVVM Xamarin 表单实验室 框架 我想要完成的是当用户点击菜单项时应用程序导航到正确的视图 这是xaml代码
  • docs.microsoft.com 上的 .NET 平台扩展是什么?

    Microsoft Docs 中有一个框架级导航元素 称为 NET 平台扩展 https learn microsoft com en us dotnet api index view dotnet plat ext 2 1 它包含有关最近
  • 在 Matlab 中对列进行排序

    我有 2 列使用 textscan 导入的数据 数据看起来像这样 其中U is undetect and D is detect mydata 51 U 57 D 48 U 47 D my data 4x1 double 4x1 char
  • 在ubuntu 18.04上安装python 2.7

    有没有办法在 Ubuntu 18 04 上安装 Python 2 7 我尝试了这个命令 但它不起作用 sudo apt install python minimal 有没有办法手动安装 我尝试使用 python 2 7 作为不支持 pyth
  • 检查列表视图中的复选框也会检查其他随机复选框

    每当我在列表视图中选中一个复选框时 其他随机复选框也会被选中 这可能是由于列表视图回收项目所致 我也尝试过设置android focusable false 按照某些地方的建议 添加到我的布局中的复选框 但是当选中其复选框时 仍然不会调用
  • STL迭代器是否保证集合更改后的有效性?

    假设我有某种集合 并且我在它的开头获得了一个迭代器 现在假设我修改了该集合 无论集合或迭代器的类型如何 我仍然可以安全地使用迭代器吗 为了避免混淆 以下是我讨论的操作顺序 获取集合的迭代器 修改集合 显然 不是其中的元素 而是集合本身 使用
  • Android 从相机预览中解码位图

    我正在尝试从相机预览中获取位图图像 我将在执行面部检测后对其进行一些处理并绘制一些叠加层 环顾四周后 我发现 onPreviewFrame 获取的字节数组无法直接解码为位图 需要使用 YuvImage 将其转换为正确的像素格式 而这正是我所
  • Python pycrypto 模块:为什么 simplejson 无法转储加密字符串?

    表明统一码错误 utf8 codec can t decode byte 0x82 in position 0 unexpected code byte 这是代码 from Crypto Cipher import AES import s
  • 包含脱机 HTML 的 Visual Studio Code 扩展

    VSCode 扩展是否可以包含在安装扩展时写入磁盘某处 无论在哪里 的 HTML 以便我可以从链接打开该 HTML 例如 我想要在其工具提示中提供指向某个函数的离线文档的链接 是的 您的扩展可以使用标准节点 api 来下载文件 然后你可以
  • 0x800a138f - JavaScript 运行时错误:无法获取未定义或 null 引用的属性“值”

    我编写了一段 JavaScript 代码来比较 2 个文本框中的 2 个日期 function CompareDates var fdate document getElementById txtFromDate var edate doc
  • AZURE:workerrole 中的异步 Run()

    我有一个异步任务 async Task UploadFiles 我想在 azure 工作者角色的 Run 方法中调用 UploadFiles 上的 等待 但 await 仅适用于声明为异步的方法 那么我可以使 Run 方法异步 如下所示 p
  • django celery - 如何将 request.FILES['photo'] 发送到任务

    我正在尝试通过以下方式将 request FILES photo 从我的网站上传的文件 发送到 tCelery tasks upload photos delay img request FILES photo 我收到 pickle 错误
  • 使用 PowerShell 在 IIS FTP 站点上设置权限和设置

    我是 PowerShell 的初学者 我尝试了这个脚本并且运行良好 但我需要将 FTP 授权规则更改为 所有用户 读 写 并将 FTP 用户隔离 更改为 用户名目录 NEEDED FOR IIS CMDLETS Import Module
  • 尝试在 Spring MVC 中使用 OAuth 保护资源

    我们已经在 Spring MVC 上使用 Java 编写了 REST Web 服务 我一直在努力保护它们 OAuth 服务器在另一个网站中实现 该网站处理登录和访问令牌的创建 因此 在允许用户访问网络服务之前 我需要验证访问令牌是否正确 然
  • 如何在java中定期刷新ZipOutputStream

    我正在尝试以 zip 格式存档文件列表 然后即时为用户下载 我在下载 1GB 大小的 zip 时遇到内存不足问题 请帮助我如何在不增加 jvm 堆大小的情况下解决此问题 我想定期冲洗流 我正在尝试定期冲洗 但这对我不起作用 请在下面找到我的
  • 尝试在写入事务之外修改对象

    所以我不知道为什么会出现这个错误 错误信息如下 由于未捕获的异常 RLMException 而终止应用程序 原因 尝试在写入事务之外修改对象 首先在 RLMRealm 实例上调用 beginWriteTransaction 首先抛出调用堆栈
  • ECB、CBC、CFB哪种加密模式

    我的 php 脚本和 c 应用程序将相互传递一个 32 个字符长的哈希字符串 最佳模式是什么 我想到了 ECB 但我不确定 因为它说如果使用超过 1 个区块就不要使用 我如何知道该块有多大 他们偶尔会传递一个大文本文件 这将是加密此 CBC
  • 提交后清除 React 中的表单

    我试图在使用 Axios 创建表单提交后清除表单数据 消息处理良好 响应记录到页面 但每个文本字段中的数据在提交后仍保留在页面上 我尝试添加一个resetForm函数 我将表单设置回原来的空白状态 但这不起作用 import React C
  • Zend Framework 2 一个布局中有两个模板?

    在我的应用程序的每个模块中 我将有一个主要内容部分和一个侧边栏菜单 在我的布局中 我有以下内容 div class span8 listings div div class span4 div 我的控制器都返回一个指定内容的 ViewMod
  • Python 正则表达式 findall

    我正在尝试使用 Python 2 7 2 中的正则表达式从字符串中提取所有出现的标记单词 或者简单地说 我想提取其中的每一段文本 p p 标签 这是我的尝试 regex ur u005B1P u005D u005B u002FP u005D