a = "[abc]def - aaa" # key = "abc" value = "def - aaa"
a2 = "[_abc def]def - aaa" # key = "_abc def" value = "def - aaa"
b = "[abc]"
c = "abc]" # key = "abc" value = ""
d = "[abc]]def/acd" # key = "abc" value = "def/acd"
f = "abc]]" # key = "abc" value = ""
Выше приведены лишь некоторые примеры шаблонов. У меня есть тысячи подобных строковых переменных. Кронштейн может быть одинарным "]", "["
или двойной "]]", "[["
, или отсутствует в левой части.Регулярное выражение для извлечения ключа, окруженного скобками
Я хочу получить пару ключевых значений. Ключом является строка внутри скобки (может отсутствовать левая скобка) (например, abc
, abc def
). Значение представляет собой строку в правой части скобки, такую как def - aaa
или def/acd
, или пустую строку.
Как определить шаблон регулярного выражения в Python? Я попробовал несколько, но они не работают для всех переменных.
Я попытался re.search(r"([^[].*?)(?:]|]])([^]].*)", a)
, но он не работает с re.search(r"([^[].*?)(?:]|]])([^]].*)", b)
Я не понимаю ваш вопрос. –
Что вы ожидаете от этих примеров? Что делать, например, '' abc]] "? – dawg
@dawg Я обновляю свой вопрос, для '' abc]] "' 'key = abc' и' value = "" ' – Sean