如何使用Python在文本文件中查找所有isbn?

mcb*_*etz 6 python parsing

我有一个text_isbn载有ISBN 的文本文件.我想编写一个脚本来解析它并将其写入一个新文本文件,每个ISBN号都在一个新行中.

到目前为止,我可以编写用于查找ISBN的正则表达式,但无法进一步处理:

import re
list = open("text_isbn", "r")
regex = re.compile('(?:[0-9]{3}-)?[0-9]{1,5}-[0-9]{1,7}-[0-9]{1,6}-[0-9]')
Run Code Online (Sandbox Code Playgroud)

我尝试使用以下内容但出现错误(我猜列表格式不正确......)

parsed = regex.findall(list)
Run Code Online (Sandbox Code Playgroud)

如何解析并将其写入新文件(output.txt)?

这是一个文本的示例 text_isbn

Praxisguide Wissensmanagement - 978-3-540-46225-5
Programmiersprachen - 978-3-8274-2851-6
Effizient im Studium - 978-3-8348-8108-3
Run Code Online (Sandbox Code Playgroud)

Jak*_*yer 7

怎么样

import re

isbn = re.compile("(?:[0-9]{3}-)?[0-9]{1,5}-[0-9]{1,7}-[0-9]{1,6}-[0-9]")

matches = []

with open("text_isbn") as isbn_lines:
    for line in isbn_lines:
        matches.extend(isbn.findall(line))
Run Code Online (Sandbox Code Playgroud)

  • *咳嗽*咳嗽`输入'内置*咳嗽* (3认同)