Domanda

stringhe di esempio

785*()&!~`a

##$%$~2343

455frt&*&*

Voglio catturare il primo e il terzo ma non il secondo poiché non contiene alcun carattere alfabetico per favore

È stato utile?

Soluzione

In effetti, penso che [a-zA-Z] potrebbe essere sufficiente per abbinare le tue stringhe.

Per catturare tutto, prova: ^.*[a-zA-Z[.*$

Altri suggerimenti

Ecco un modo possibile:

.*[a-zA-Z]+

Forse dovresti chiarire un po 'cosa intendi per "catpuring": vuoi l'intera stringa di soli bit ASCII?

Inoltre, non devi dire se deve corrispondere al semplice alfabeto romano (dalla A alla Z) o se deve corrispondere anche ai caratteri Unicode per abbinare le stringhe in altre lingue.

Se hai solo bisogno di testare la tua stringa, in C # dovresti fare:

bool matching = Regex.IsMatch(myString, "[a-zA-Z]");

Non avresti bisogno di nient'altro, poiché solo una lettera in qualsiasi punto della stringa myString corrisponderà (secondo la tua definizione).

Questo è il mio sito di test RegEx preferito: Javascript Regexp Tester e Cheat Sheet

Se si desidera abbinare tutte le lettere (comprese quelle non ascii), utilizzare p {L} anziché [a-zA-Z] . Vedi Categorie Unicode .

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top