Должно быть, я полностью испортил свое регулярное выражение. Я пытаюсь найти идентификатор и значение в следующей строке (и в конечном итоге нужно будет найти описание и его значение):
"cve": {
"CVE_data_meta": {
"ASSIGNER": "cve@mitre.org",
"ID": "CVE-2020-1785"
},
"data_format": "MITRE",
"data_type": "CVE",
"data_version": "4.0",
"description": {
"description_data": [
{
"lang": "en",
"value": "Mate 10 Pro;Honor V10;Honor 10;Nova 4 smartphones have a denial of service vulnerability. The system does not properly check the status of certain module during certain operations, an attacker should trick the user into installing a malicious application, successful exploit could cause reboot of the smartphone."
}
]
},
Но по какой-то причине я получаю сообщение об ошибке выше.
Это мой код:
m= re.match("ID"\s*"([A-Za-z0-9-]*)"", str)
if m:
print (m.groups())
Я тестировал в https://pythex.org/ и регулярное выражение
ID ":" ([A- Za-z0-9 -] *) "
сработало, но при запуске его в программе возникли проблемы с точкой с запятой, поэтому я попытался заменить ее на \ s *, но возникли проблемы с продолжением строки. Есть идеи? Прямо сейчас мне нужно просто захватить идентификатор, а затем мне понадобится описание.
Надеюсь, вы можете помочь! Я новичок в python и не часто делаю регулярные выражения.