【问题标题】:extracting python .finditer() span=( ) results [duplicate]提取 python .finditer() span=( ) 结果[重复]
【发布时间】:2018-11-27 19:48:10
【问题描述】:

在字符串上使用 .finditer() 后,我想提取“匹配对象”的索引; span=(xx,xx) 并在 print(search_text[xx:xx]) 语句中使用它们。

如何提取搜索结果的位置。

匹配 = search_pattern.finditer(search_text) print(search_text[xx:xx]) # 需要想办法获取切片索引

【问题讨论】:

    标签: python


    【解决方案1】:

    你可以使用span方法

    matches = search_pattern.finditer(search_text)
    print ([m.span() for m in matches])
    

    【讨论】:

      【解决方案2】:

      我认为您的问题可能已经得到解答。看这里:Python Regex - How to Get Positions and Values of Matches

      彼得霍夫曼给出了这个答案(我在上面链接过):

      import re
      p = re.compile("[a-z]")
      for m in p.finditer('a1b2c3d4'):
      print m.start(), m.group()
      

      如果这没有帮助,请告诉我。

      【讨论】:

      • 如果您认为某个问题是重复的,请投票关闭作为重复,或者如果您还没有投票权限,则标记为重复;不要写答案。
      • 我有点新,所以谢谢你让我知道。您是否继续标记它(或将其关闭为重复)?看起来有人继续这样做。很高兴知道。再次感谢。
      • 没关系,@abarnert - 我看到你确实将它作为副本关闭并提供了链接。再次感谢。我在学习!
      • 没问题。关闭作为 dup 会自动添加指向重复问题的链接。标记...我认为它会将链接添加为评论,但我不确定。无论如何,你应该有足够的代表很快就可以开始直接投票了。
      猜你喜欢
      • 2021-11-20
      • 1970-01-01
      • 1970-01-01
      • 2013-08-17
      • 1970-01-01
      • 2018-09-19
      • 2019-04-16
      • 1970-01-01
      • 2021-07-14
      相关资源
      最近更新 更多