【问题标题】:Python Regular Expressions for a question mark [duplicate]问号的Python正则表达式[重复]
【发布时间】:2019-05-29 20:59:27
【问题描述】:

我正在处理一个数据集,其中包含下一个审查日期的列。此列漏掉了由问号 (?) 表示的字段

我想捕捉这个?然后使用正则表达式将所有没有审查日期的行与其余数据分开。

问题:明确匹配问号的表达方式是什么? (?)

【问题讨论】:

  • 你试过'\?'

标签: python regex


【解决方案1】:

问号前的反斜杠表示“字面上匹配一个问号”

\?

此外,将问号放入字符类将意味着它是按字面意思匹配的,而不是具有其典型的“前一个的 0 或 1”含义

[?]

因此:

bcd[?]
bcd\?

两者都将匹配如下所示的数据:

abcd?efg
 ^^^^

如果您想匹配只是一个问号而不是其他的数据,请使用开始 ^ 和结束 $ 标记:

^\?$

请考虑不使用正则表达式可能会更快,只需执行一个简单的“字符串包含”检查问号是否存在,如果这就是您正在做的所有事情,并且不需要复杂的模式匹配和值捕获

【讨论】:

  • 谢谢凯厄斯。似乎没有任何效果。真的很奇怪!它与作为日期的列有关吗?想匹配吗?没有别的
  • “列是日期”是什么意思?显示您在其中看到“列”的应用程序的屏幕截图(将屏幕截图上传到例如 imgur 并粘贴链接) - 我想查看示例数据以及显示它的程序
猜你喜欢
  • 2019-02-08
  • 1970-01-01
  • 2012-07-16
  • 2011-07-15
  • 2011-10-09
  • 2016-04-22
  • 2016-11-16
  • 2020-04-11
  • 1970-01-01
相关资源
最近更新 更多