Come controllare se una stringa contiene solo lettere di alfabeto in Java

July 18

Il modo più straight-forward per controllare una stringa Java per vedere se corrisponde a un obbligo di messa a caratteri validi, come solo alfabetico oppure solo alfanumerico, sarebbe quella di impostare un ciclo for e controllare ogni carattere individuale della stringa per vedere se corrisponde alle lettere conosciute dell'alfabeto. Fortunatamente, c'è un modo migliore utilizzando uno strumento popolare conosciuta come "espressioni regolari". Questo linguaggio standard industriale di modelli di testo è supportato da Java come un modo per eseguire sofisticate pattern matching e l'analisi, e si scopre quello che sarebbe un compito noioso in qualcosa di quasi banale.

istruzione

1 Aprire il Netbeans ambiente di sviluppo integrato (IDE) che è venuto con la versione di Java o qualsiasi altro editor Java si preferisce.

2 Digitare il seguente testo in Netbeans per definire una stringa:

String s1 = "Questo è un $ Tring che non contiene charact3rs 0nly alphab3t1cal.";

3 Digitare quanto segue per definire un modello di espressione regolare per la ricerca di:

String pattern = "[a-zA-Z] *"

Le parentesi quadre in un modello di espressione regolare consentono di definire un intero set di caratteri validi, e il "*" dice che si desidera, come molti di quei personaggi come si può ottenere. In questo caso, l'alfabeto completo, sia caso superiore e inferiore, è definito come caratteri validi, mentre i numeri e la punteggiatura non sono.

4 Digitare il seguente comando per vedere se i due partner:

s1.matches (modello);

Ciò restituirà "falso", dal momento che la stringa originale contiene molti numeri e simboli di punteggiatura.

Consigli e avvertenze

  • Si potrebbe aggiungere numeri per il modello di caratteri validi semplicemente mettendo "0-9" in le parentesi quadre nella Fase 3. La punteggiatura è un po 'più difficile, tuttavia, poiché la maggior parte punteggiatura hanno un significato speciale nel linguaggio regex. Purtroppo, regex, come Java per sé, è un linguaggio complesso che richiede una grande quantità di tempo e fatica per imparare. Si può leggere di più su di esso alla prima risorsa.