【问题标题】:How to extract data from formatted string using python?如何使用python从格式化字符串中提取数据?
【发布时间】:2017-12-31 05:40:04
【问题描述】:

我有一组这样的字符串:

C001F01.PNG

C001G01.PNG

C002F10.PNG

遵循以下格式:

C(id number)(F or G)(另一个id number).PNG

我想知道他们的 id 并知道他们是 F 类还是 G 类,我读到 re.split() 可以做类似的工作,但我很困惑,不明白 RE 是如何工作的。

【问题讨论】:

标签: python regex string text string-formatting


【解决方案1】:

您当然应该阅读更多关于正则表达式的内容。第一个提示是,当您想要捕获一个模式时,您需要将其括在括号中。例如(\d+)。但是对于这个例子,你需要的代码是:

match = re.match(r'C(\d+)([F|G])(\d+)\.PNG', s)

first_id = match.group(1)
fg_class = match.group(2)
second_id = match.group(3)

【讨论】:

【解决方案2】:
s = "123STRINGabcabc"

def find_between( s, first, last ):
    try:
        start = s.index( first ) + len( first )
        end = s.index( last, start )
        return s[start:end]
    except ValueError:
        return ""



print find_between( s, "123", "abc" )

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-10-15
  • 2015-01-25
  • 1970-01-01
  • 2023-01-07
  • 1970-01-01
  • 2014-11-17
  • 1970-01-01
相关资源
最近更新 更多