Я не могу использовать переменную p в регулярном выражении:
>>> f="C:\\test\\Win10-20200323080012\\Refactoredtests\\All\\IssueIDcard\\EmptyCard_UserConfirmationPinW\\1E0500E6.png"
>>> p="C:\\test\\Win10-20200323080012\\"
>>> bool(p in f)
True
>>> re.search(rf"^{p}(.*)$",f)
Traceback (most recent call last):
:
re.error: unbalanced parenthesis at position 33
>>> rf"^{p}(.*)$"
'^C:\\test\\Win10-20200323080012\\(.*)$'
>>> re.search('^C:\\test\\Win10-20200323080012\\(.*)$',f)
Traceback (most recent call last):
:
re.error: unbalanced parenthesis at position 33
# this works using the output of rf"^{p}(.*)$" wrapped in r'':
>>> re.search(r'^C:\\test\\Win10-20200323080012\\(.*)$',f)
<re.Match object; span=(0, 104), match='C:\\test\\Win10-20200323080012\\Refactoredtests\\'>
repr не работают:
>>> re.search(rf"^{repr(p)}(.*)$",f)
>>> rf"^{repr(p)}(.*)$"
"^'C:\\\\test\\\\Win10-20200323080012\\\\'(.*)$"
>>> re.search("^'C:\\\\test\\\\Win10-20200323080012\\\\'(.*)$",f)
f и p взяты из программы поэтому я не могу обернуть их r''