Python将字符串与几个正则表达式进行比较

2024-06-16 16:31:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我对Perl和Ruby很有经验,但对Python还不太熟悉,所以我希望有人能给我介绍一下Pythonic完成以下任务的方法。我想比较多个正则表达式的几行并检索匹配的组。在Ruby中,可能是这样的:

# Revised to show variance in regex and related action.
data, foo, bar = [], nil, nil
input_lines.each do |line|
  if line =~ /Foo(\d+)/
    foo = $1.to_i
  elsif line =~ /Bar=(.*)$/
    bar = $1
  elsif bar
    data.push(line.to_f)
  end
end

我在Python中的尝试结果非常糟糕,因为匹配组是从对正则表达式的match/search调用返回的,而Python在条件语句或switch语句中没有赋值。什么是Python的方式做(或思考!)关于这个问题?


Tags: to方法datafoolinebar经验语句