Я хотел бы сгенерировать строку, соответствующую моим регулярным выражениям, используя Python 3. Для этого я использую удобную библиотеку под названием rstr .
Мои регулярные выражения:
Моя задача:
Я должен найти общий способ, как создать строку, которая будет соответствовать обоим моим регулярным выражениям.
Что я не могу сделать:
Измените оба регулярных выражения или присоединитесь к ним любым способом.Это я считаю неэффективным решением, особенно в случае несовместимых регулярных выражений:
import re
import rstr
regex1 = re.compile(r'^[abc]+.')
regex2 = re.compile(r'[a-z]+')
for index in range(0, 1000):
generated_string = rstr.xeger(regex1)
if re.fullmatch(regex2, generated_string):
break;
else:
raise Exception('Regexes are probably incompatibile.')
print('String matching both regexes is: {}'.format(generated_string))
Есть ли обходной путь или какая-нибудь волшебная библиотека, которая может справиться с этим?Любые идеи приветствуются.
Вопросы, которые кажутся похожими, но ни в коем случае не полезны:
Аскер уже имеет строку, которую он просто хочет проверить по множеству регулярных выражений самым элегантным способом.В моем случае нам нужно сгенерировать строку умным способом, который бы соответствовал регулярным выражениям.