Извлечение определенных данных из файла с помощью регулярного выражения [закрыто]

Следующую информацию я хочу извлечь из файла, который имеет другую версию, дату выпуска, номер CVE. Может ли кто-нибудь показать мне, как получить эту информацию с помощью регулярного выражения ..?

    Release date: March 13, 2007
    Vulnerability identifier: APSB07-07
    CVE number: CVE-2007-1278
    Platform: Windows only
0
задан 4 March 2015 в 12:13

2 ответа

Если Вы не можете перенести голову вокруг regex, то не используйте его. В большинстве случаев можно заменить им с регулярными строковыми функциями Python.

Небольшой пример для Ваших данных:

>>> s = """    Release date: March 13, 2007
...     Vulnerability identifier: APSB07-07
...     CVE number: CVE-2007-1278
...     Platform: Windows only"""
>>> for line in s.split("\n"):
...     if "Release date:" in line:
...         print line.split("Release date: ")[1]
...     if "CVE number:" in line:
...         print line.split("CVE number: ")[1]
... 
March 13, 2007
CVE-2007-1278
>>>

Это может быть улучшено, конечно, но это должно только показать Вам, что это довольно легко без regex.

Никогда не забывайте известную кавычку:

Некоторые люди, сталкиваясь с проблемой, думают, что “Я знаю, я буду использовать регулярные выражения”. Теперь у них есть две проблемы.

4
ответ дан 4 March 2015 в 12:13

В зависимости от того, какую информацию вы хотите извлечь из вышеуказанной строки, вы можете использовать что-то вроде этого regex tester . Каждый раз, когда я пишу регулярное выражение, я использую его, чтобы убедиться, что он работает первым.

0
ответ дан 4 March 2015 в 12:13

Другие вопросы по тегам:

Похожие вопросы: