регулярное выражение для поиска JSON в журнале - PullRequest
0 голосов
/ 24 июня 2018

Я должен захватить данные на SD, расположенном в журналах (RFC5424).Я создал регулярное выражение для этого.К сожалению, есть данные в формате json и набор '[' и ']'.Может ли кто-нибудь помочь мне сделать регулярное выражение, которое правильно фиксирует эти данные?Пример:

import re
text = """[exampleSDID@32473 iut="3" eventSource="Application" eventID="1011"][examplePriority@32473 class="{"fruits": [{ "kiwis": 3,"mangos": 4,"apple": null},{ "bag": true }],"vegetables": {"patatoes": "amandine","peas": false},"meat": ["fish","chicken","beef"]}"]"""
regex = """\[(\S+@[^\]]+)\]""" 
matchAllSD = re.findall(regex, text)
for SD in matchAllSD:
    print SD

$ python main.py

exampleSDID@32473 iut="3" eventSource="Application" eventID="1011"

examplePriority@32473 class="{"fruits": [{ "kiwis": 3,"mangos":
4,"apple": null},{ "bag": true }

Спасибо!

1 Ответ

0 голосов
/ 24 июня 2018

Может быть это то, что вы ищете:

\[([^\]]*?(?:class=".*")?)\]

Демо

...