Wyrażenie w pythonie re.match

Wyrażenie w pythonie re.match
KA
  • Rejestracja:około 5 lat
  • Ostatnio:około 2 lata
  • Postów:5
0

Próbuję napisać takie wyrażanie które obejmowało by znaki od A do Z od a do z od 0 do 9 - , i spację z literami i cyframi problemu nie ma ale wytłumaczy ktoś jak mogę dodać myślnik i przecinek?
Mam cos takiego ale nie działa do końca

Kopiuj
tytul=input("Title: ")
                if re.match("[-a-zA-Z0-9 ]", tytul):
edytowany 3x, ostatnio: Kabom
stivens
  • Rejestracja:ponad 8 lat
  • Ostatnio:27 minut
0

Musisz to wy-escape-owac. W zaleznosci od dialektu to \- lub \\- (nie pamietam, ktorego Python uzywa)

EDIT: r"[\,a-zA-Z0-9\s\-]" dziala. Ale nie wiem czy takiego regexa na pewno chcesz? Bo to po prostu znajduje pierwsze wystapienie :)


λλλ
edytowany 4x, ostatnio: stivens
KA
  • Rejestracja:około 5 lat
  • Ostatnio:około 2 lata
  • Postów:5
0

@stivens: chodzi mi o to żeby wyrażenie sprawdziło mi czy w imputcie którego podaję są tylko te znaki co podałem wyżej

stivens
  • Rejestracja:ponad 8 lat
  • Ostatnio:27 minut
1
Kopiuj
re.match(r"^[\,a-zA-Z0-9\s\-]+$", title)

λλλ
KA
dzięki wielkie bez \s działa idealnie
lion137
  • Rejestracja:około 8 lat
  • Ostatnio:około 2 godziny
  • Postów:4935
0

https://regex101.com/r/JKlCU0/1
Dzięki @stivens :)
A w Pythonie, \\


Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.