2012-01-22 14 views

Odpowiedz

12

Widziałem dość dobre rozwiązania w perl i ruby na github, ale myślę, że są problemy techniczne, które uniemożliwiają pełne rozwiązanie. Na przykład:/[0-9] +/ma nieskończoną górną granicę, co nie jest praktyczne przy wybieraniu losowych liczb z.

Nigdy nie widziałem tego w JavaScript, ale można tłumaczyć.


EDIT: Po googlowania na kilka sekund ... http://fent.github.com/randexp.js/

+0

Bardzo przydatna odpowiedź i dokładnie pasuje do mojego wymogu. – Exception

1

jeśli wiesz, co wyrażenie regularne jest, można po prostu generuje losowe ciągi znaków, a następnie użyć funkcji, która odwołuje się do indeksu liter i zmienia je jako potrzebne. Wyrażenia Regex różnią się znacznie, więc trudno będzie znaleźć taki, który spełnia wszystkie możliwe regex.

1

Twoje pytanie jest dość otwarty, więc mam nadzieję, że ten kieruje do właściwego rozwiązania. Uzyskaj aktualny czas (w sekundach), MD5, sprawdź go pod REGEX, zwróć mecz.

Uruchamianie przykład: http://jsfiddle.net/MattLo/3gKrb/

Zastosowanie: RandString(/([A-Za-z])/ig); // expected to be a string

+0

Bardzo przydatna odpowiedź i blisko związana z moimi wymaganiami. – Exception

+0

Fiddle daje błędne ustawienie. Np .: '/ a/ig' daje mi' aaa' i 'aaaa' jako wynik, kiedy powinno być po prostu' a'. Testowane z wieloma innymi wejściami do wyrażenia regularnego i łamie się –

Powiązane problemy