【问题标题】:How to use multiple strings in re.search with OR condition?如何在带有 OR 条件的 re.search 中使用多个字符串?
【发布时间】:2020-07-22 14:33:16
【问题描述】:

我正在使用下面的代码在if 条件下的字符串中搜索模式,但我需要在条件下使用OR..我该怎么做

if  re.search(r'uk', result):

我想要像下面这样:

 if re.search(r'uk|eu', result):

但不知何故它给出了错误

这在语法上正确吗?

【问题讨论】:

  • 总是将完整的错误消息(从单词“Traceback”开始)作为文本(不是屏幕截图)放在有问题的(不是评论)中。还有其他有用的信息。
  • 带有r'uk|eu' 的代码对我有用。您没有显示完整的错误消息,所以我们知道您真正的问题是什么。也许你在不同的地方有问题,或者问题在不同的变量中产生价值。
  • 是的,抱歉,犯了愚蠢的错误,不知何故错过了该声明中的引用......它现在可以使用 |运算符

标签: python if-statement search python-re


【解决方案1】:

试试

if re.search(r'uk', result) or re.search(r'eu', result):

【讨论】:

  • 似乎是解决方案,但仍不确定为什么会这样 | re.search 模块中用于 OR 的运算符失败
  • 你能提供错误信息吗?尝试在您的问题中测试代码,并且对我来说效果很好 - 尽管为了便于阅读(至少对我自己而言),我会以与 if re.search(r'(uk)|(eu)', result'): 略有不同的方式编写它。
  • 我很抱歉,是的,我错过了声明中的一些引用..它现在可以工作了
猜你喜欢
  • 1970-01-01
  • 2022-01-16
  • 1970-01-01
  • 2018-12-15
  • 2019-09-22
  • 1970-01-01
  • 2012-03-29
  • 1970-01-01
  • 2014-08-08
相关资源
最近更新 更多