Fondamenti delle espressioni regolari
Fa parte della sezione Logica e flusso del percorso Java di Coddy. Lezione 46 di 59.
Le espressioni regolari (regex) sono schemi utilizzati per cercare e convalidare stringhe. In Java, usiamo il metodo matches() per verificare se una stringa corrisponde a uno schema.
Verifica se una stringa contiene solo cifre:
String text = "12345";
boolean isMatch = text.matches("[0-9]+");Dopo aver eseguito il codice precedente, isMatch contiene:
true
Verifica se una stringa contiene solo lettere:
String text = "Hello";
boolean isMatch = text.matches("[a-zA-Z]+");Dopo aver eseguito il codice precedente, isMatch contiene:
true
Sfida
FacileCrea un metodo chiamato validateInput che accetta due argomenti:
- Una String (
text) da convalidare - Una String (
type) che specifica il tipo di convalida
Il metodo deve convalidare il testo in base a questi tipi:
- "number": deve contenere solo cifre (0-9)
- "word": deve contenere solo lettere (a-z o A-Z)
- "email": deve contenere @ e almeno un carattere prima di esso
- "phone": deve contenere esattamente 10 cifre
I messaggi restituiti devono essere:
- Se text è null: restituisci "Invalid input"
- Se type non è valido: restituisci "Invalid type"
- Se la convalida ha esito positivo: restituisci "Valid"
- Se la convalida non ha esito positivo: restituisci "Invalid"
Provalo tu
import java.util.Scanner;
public class Main {
public static String validateInput(String text, String type) {
// Scrivi il tuo codice qui
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String text = scanner.nextLine();
String type = scanner.nextLine();
if (text.equals("null")) text = null;
System.out.println(validateInput(text, type));
}
}Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Logica e flusso
1Array multidimensionali
Concetti di base degli array 2DAccesso agli elementi degli array 2DCicli annidati con array 2DRiepilogo - Array 2DAddizione e sottrazione di matriciArray irregolariArray 3D e oltreSchemi comuni degli array 2DRiepilogo - Tutto sugli array4HashSet Parte 1
Che cos'è un HashSet?Aggiungere un elementoRimuovere un elementoVerificare se un elemento esisteVuoto e dimensioneSvuotare e clonareRipasso - HashSet7Gestione di base degli errori
Nozioni di base su try-catchBlocco finallyLancio di eccezioniEccezioni personalizzate2HashMap Parte 1
Che cos'è una HashMap?Dichiarare una HashMapAccedere ai valoriVerificare se una chiave esisteModificare i dizionariRiepilogo - HashMap5HashSet Parte 2
Matematica - Unione di HashSetMatematica - Intersezione di HashSetMatematica - Differenza tra insiemiMatematica - Differenza simmetricaSottoinsiemi e sovrainsiemiIterare sugli insiemi8Operazioni avanzate sulle stringhe
Fondamenti di StringBuilderIntroduzione a StringBufferFondamenti delle espressioni regolariCorrispondenza di pattern con le regexTokenizer di stringheFormattazione avanzata delle stringhe3HashMap Parte 2
Metodi di HashMapIterare con keySet()Iterare con entrySet()HashMap annidateRiepilogo - Gestire il magazzinoRiepilogo - Operazioni con HashMap6Flusso di controllo avanzato
Istruzioni con etichettaEspressione switchCorrispondenza dei patternClausole guardiaRiepilogo - Flusso di controllo9Progetto - Contatore di parole uniche
Inserimento e memorizzazione del testoElaborazione delle paroleEsercitati da solo: Compilatore Java online