【问题标题】:Python substring in string when parts of the substring is not consequential当部分子字符串不重要时,字符串中的 Python 子字符串
【发布时间】:2021-12-31 09:11:10
【问题描述】:

说这是我的string: http://www.test.com/1/page/ 这是我的sub_stringwww.test.com/2/page/

现在如果我跑

sub_string in string

结果显然是False,因为2 不在string 中。但是,我不在乎那部分。我唯一关心的部分是www.test.compage。我只想检查这些部分,而不关心它们之间的内容。我怎样才能以这种方式执行搜索,结果将是True

【问题讨论】:

  • 您可能还会发现这个有趣的Approximate string search in Python
  • 尝试使用.split()partition() 从字符串中分离出感兴趣的前缀和后缀,然后使用.startswith().endswith() 来检查是否匹配。

标签: python string search


【解决方案1】:

您可以使用regex

import regex as re
test_string="www.test.com/2/page/"
len(re.findall(".*www\.test\.com\/[0-9]\/page\/",test_string))>0

输出
是的

【讨论】:

    【解决方案2】:

    你可以使用正则表达式:

    import re
    all_locs = re.findall('www\.test\.com/[0-9]+/page/', source_string)
    

    这将返回子字符串出现的所有位置。空列表意味着它没有出现

    【讨论】:

      【解决方案3】:

      你可以简单地使用:

      if substring in string.lower():
          print("Exists")
      else:
          print("Does not exist")
      

      regex:

      import re
      for match in re.findall('www\.test\.com/[0-9]+/page/', str):
      print(match)
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-12-02
        • 2011-04-14
        • 1970-01-01
        • 2014-02-27
        • 2019-10-11
        • 1970-01-01
        相关资源
        最近更新 更多