O ile wiem {}
nawiasy klamrowe są wykorzystywane w celu ograniczenia znaków w wyrażeniu regularnym jak {3,12}
, by dopasować długość znaków od 3 do 12.jak ograniczyć znaki między zakresem wykorzystujące wyrażenia regularnego
Próbuję sprawdzanie nazwy użytkownika, która może zawierać okres .
lub _
albo jedną, ale nie obie, nie ma znaczenia umieszczenie. W tym przypadku regex działa bardzo dobrze.
(^[a-z0-9]+$)|(^[a-z0-9]*[\.\_][a-z0-9]*$)
Ale też trzeba ograniczyć długość ciągu od 3 do 12 lat, próbowałem umieścić {3,12}
w regex, ale to nie działa.
((^[a-z0-9]+$)|(^[a-z0-9]*[\.\_][a-z0-9]*$)){3,12}
Patrz przykład: https://regex101.com/r/kN3aO1/1
Wiele dzieje się z wybranym wyrażeniem '^ (? =. {3,12} $) [a-z0-9] + (?: [._] [a-z0-9] +)? $ "oprócz pozostałych w stosunku do długości przedziału czasu, czy widzisz inne subtelne różnice w stosunku do oryginalnego wyrażenia regularnego? – sln
Użyłem '|' do odróżnienia ciągu znaków od nieokresowego lub podkreślenia i vice versa innej strony, jakkolwiek myślę, że ekspresja hwnd jest lepsza niż kopalnie, ponieważ nie używał lub –