2011-02-11 9 views
5

Un po 'di tempo fa mi sono imbattuto in un gioiello rubino che, data un'espressione regolare, generava stringhe di esempio.Ruby gem per generare esempi di espressioni regolari

Ad esempio, data la regex:

/[a-z]{5}[0-9]{4}/ 

potrebbe generare la stringa:

"hkdbv4578" 

qualcuno ricorda il nome di questo gioiello?

risposta

4

Credo che stai cercando: https://github.com/benburkert/randexp Randexp

+0

Se stai cercando una gemma più "completa", che gestisca effettivamente il linguaggio regexp completo (compresi i set di caratteri, ad esempio quale randexp non lo è!), Consulta: https://github.com/tom-lord/ regexp-esempi –

+0

Inoltre, se si desidera semplicemente "generare un indirizzo e-mail fittizio" o simile, probabilmente si preferisce utilizzare qualcosa come: https://github.com/stympy/faker –

-1

Tutte le gemme regex disponibili può essere trovato alla RubyGems here.

Forse un modo più facile per voi per testare le espressioni regolari di Ruby sarebbe quello di utilizzare Rubular.

+1

Sono a conoscenza del sito RubyGems e hanno cercato di trovare questo gioiello prima che ho postato la domanda. Rubular è un ottimo sito, ma esattamente il contrario di quello che mi serve per 2 motivi: 1) è una webapp, non è una gemma, 2) Io non sto cercando di testare le espressioni regolari, ma piuttosto generare esempio stringhe da espressioni regolari automaticamente. – Austin

0

ho avuto una rapida occhiata in giro, non potrebbe trovare una gemma, ma hanno trovato utile questa https://github.com/repeatedly/ruby-string-random.

Sembra che sia possibile generare una stringa da un'espressione regolare che lo utilizza.

Come nota a margine, ho trovato che rubular è di valore inestimabile quando si verifica l'espressione regolare in ruby.