Mam ciąg znaków, który może wyglądać następującopython wyrażenie regularne zastąpienie części dopasowanej ciąg
"myFunc('element','node','elementVersion','ext',12,0,0)"
Jestem obecnie sprawdzanie ważności użyciem, co działa dobrze
myFunc\((.+?)\,(.+?)\,(.+?)\,(.+?)\,(.+?)\,(.+?)\,(.+?)\)
teraz jestem Chciałbym zastąpić dowolny ciąg na trzecim parametrze. Niestety nie mogę po prostu użyć stringreplace na cokolwiek pod-ciągu na trzeciej pozycji, ponieważ ten sam "pod-ciąg" może być gdziekolwiek indziej w tym ciągu.
z tym i na re.findall,
myFunc\(.+?\,.+?\,(.+?)\,.+?\,.+?\,.+?\,.+?\)
I był w stanie uzyskać zawartość podciągu na 3. pozycji, ale re.sub nie zastępuje ciąg po prostu zwraca mi łańcuch i chce wymienić:/
oto mój kod
myRe = re.compile(r"myFunc\(.+?\,.+?\,(.+?)\,.+?\,.+?\,.+?\,.+?\)")
val = "myFunc('element','node','elementVersion','ext',12,0,0)"
print myRe.findall(val)
print myRe.sub("noVersion",val)
jakiś pomysł co Tęskniłam?
dziękuję! Seb
Różnorodność odpowiedzi tutaj prowadzi mnie do przypuszczenia, że rewolta pythonowy przeciwko Perl TIMTOWTDI motto było nieco błędne. :) –