Skip to main content
 首页 » 编程设计

python之如何在字符串中搜索多字串(完全匹配)

2025年05月04日54luoye11

我发现了与此类似的问题,但它们并不是我要找的,因为它们询问的是特定的单数词而不是多个词。 我有一个字符串 k (这是字典中的一个键),它是由一个函数自动生成的(取决于用户输入),它看起来像这样: “条件 1 ^ 条件 2 ^ 条件 3 ^ ...” (至少一个条件)。

每个条件可以如下所示:

  1. a > b
  2. a <= c
  3. b < a <= c

现在,我要做的是在 k 中搜索一段特定的字符串,假设条件为“a <= c”:if "a <= c"in k then ...。 问题是可能有“aa”、“ba”、“aaa”、“ca”等而不是“a”,在这种情况下我不希望条件为真。我该如何处理?我一直在阅读 re 模块文档,但我很困惑

更新 我最初按照 alec_djinn 的建议使用了 re.findall,并根据我的需要对其进行了调整:

'(?<![^\s])a <= c(?![^\s])' 

但是我遇到了一些问题。 所以我决定不使用正则表达式,而是检查“a<=c”是否等于任何

g for g in [k.split()[g]+k.split()[g+1]+k.split()[g+2] for g in xrange(len(k.split())-2)].  

它有效。 对此解决方案有何评论?

请您参考如下方法:

\ba <= c\b 

你可以为此做一个re.search。