Aktywne Wpisy

Zarzutkkake +260
Powiedzcie mi co te sądy mają w głowach. Ja rozumiem, że jak alimenty na dzieci to potrafią #!$%@?ć.
Koleżanka ma 29 lat, dobrą prace a ojca widziała tylko na zdjęciach bo ten zniknął jak miała pół roku a od początku ciąży jej matki tylko pił. Teraz po blisko 29 latach chciał odnowić kontakt, dowiedział sie co robi, czym sie zajmuje i jakie ma obecnie życie i zamiast kontynuować z nią jakiekolwiek relacje
Koleżanka ma 29 lat, dobrą prace a ojca widziała tylko na zdjęciach bo ten zniknął jak miała pół roku a od początku ciąży jej matki tylko pił. Teraz po blisko 29 latach chciał odnowić kontakt, dowiedział sie co robi, czym sie zajmuje i jakie ma obecnie życie i zamiast kontynuować z nią jakiekolwiek relacje

j0shva +5
Jakie filmy/seriale wojenne polecacie? Nie chce jakiegos typowego amerykanskiego patosu, gdzie alianci pra do przodu, niczym niezniszczalne roboty, majac aimbota. Chce cos w miare realistycznego z fajna fabula. Do tej pory ogladalem na zachodzie bez zmian, wrog u bram, 1917, listy z iwo jimy, cienka czerwona linie, kompanie braci, beneath 60 hill, najmniej podobal mi sie 1917 przez wlasnie taki aliancki patos, aczkolwiek byl zjadliwy. cienka czerwona linia tez byla zjadliwa, preferowalbym





$$CommandName1??CommandParam$$$$CommandName2??CommandParam$$$$CommandName3??CommandParam$$
Ogólna struktura: $$NazwaKomendy??Parametr$$
W jednym stringu mogą być takie struktury połączone jak w przykładzie.
Potrzebuję przy pomocy metody match() a następnie groups() wyciagnac liste komend i parametrów w takiej postaci:
[CommandName1??CommandParam , CommandName2??CommandParam , CommandName3??CommandParam]
Później już sobie umiem z tym poradzić.
Jakiś pomysł na regexa do metody match() ?
#pytanie #programowanie #python #regex
r'\$\$[^?]+\?\?[^$]+\$\$'. Gdzieś w dokumentacji znajdziesz chyba, jak znaleźć wszystkie kolejne wystąpienia.split("$$") zwraca mi: ['', 'GETANALOGVAL??1', 'GETDIGITALVAL??1', 'GETDIGITALVAL??2', '']
Skąd 1 i ostatni element '' ???
>>> re.split("\$+", "$$CommandName1??CommandParam$$$$CommandName2??CommandParam$$$$CommandName3??CommandParam$$")['', 'CommandName1??CommandParam', 'CommandName2??CommandParam', 'CommandName3??CommandParam', '']
a puste elementy masz, bo ciąg zaczyna się i kończy na separatorze.
>>> re.split("\$+", "$$CommandName1??CommandParam$$$$CommandName2??CommandParam$$$$CommandName3??CommandParam$$".strip("$"))['CommandName1??CommandParam', 'CommandName2??CommandParam', 'CommandName3??CommandParam']
@SwordPL: I co z tego? Piszesz na procesor x86, nie mikrokontroler - tutaj wystarczy, że nie stosujesz algorytmów o nieoptymalnej złożoności dla problemu i nie czekasz na rzeczy, na które nie musisz czekać (np. na IO) - co rozwiązuje 99% problemów z wydajnością poza grami.
Edit:
Ja nie mówię, że regexy są złe w ogóle; regexy są złe tutaj.
i oczywiście:
There should be one-- and preferably only one --obvious way to do it.O(2^m+n)(m= długość regexa,n= długość stringa), prawie taką samą jak.split(O(n)). Biorąc pod uwagę, że kosztO(2^m)jest ponoszony jednorazowo (dlatego często używane regexy w wielu językach należy traktować zre.compile()), to cóż...@SwordPL: W tym przypadku to rzeczywiście prawda, split jest rozwiązaniem lepszym, bo czytelniejszym i szybszym, ale gość chciał się podszkolić z regexów.
mjest ustalone, asymptotyczna złożoność dla splita i regexa jest taka sama - różni się to tylko stałą. Dodatkowo, regex załatwia za jednym przejazdem podział po$$i po??, czego split nie umie.Później masz coś zrobić z takim kodem i się zastanawiasz dlaczego ten chu^H^H^Hwspółpracownik użył tu regexpa. Może w specyfikacji jest napisane, że
r"\${2,}", a nie tak jak u ciebie. Jeżeli separatorem jest $$, to pewnie po to, żeby pojedynczy $ mógł wystąpić ( @bred_one, zwróć na to uwagę).