Simbolo per qualsiasi numero di caratteri in regex?


142

Mi chiedo se esiste un simbolo per qualsiasi numero (incluso lo zero) di qualsiasi personaggio

Risposte:



33

Puoi usare questa espressione regolare (qualsiasi spazio bianco o non bianco) il maggior numero di volte possibile fino a 0 compreso.

[\s\S]*

Questa espressione corrisponderà al minor numero possibile, ma al numero necessario per il resto dell'espressione.

[\s\S]*?

Ad esempio, in questo regex [\s\S]*?Bcorrisponderà aBa aBaaaaB. Ma in questo regex [\s\S]*Bcorrisponderà aBaaaaBa aBaaaaB.


c'è qualche differenza tra [\ s \ S] e.?
Linqu,

8
@linqu, .a volte non corrisponderà \n(newline), a seconda dell'opzione multilinea, ma [\s\S]corrisponderà a qualsiasi personaggio.
agente-j

19

Vuoi dire

.*

. qualsiasi carattere, tranne il carattere di nuova riga, con la modalità dotall include anche i caratteri di nuova riga

* qualsiasi quantità dell'espressione precedente, incluso 0 volte


4

Vorrei usare .*. .corrisponde a qualsiasi carattere, *indica 0 o più occorrenze. Potrebbe essere necessario un interruttore DOTALL su regex per acquisire nuove linee con ..


-7

Sì, ce n'è uno, è l'asterisco: *

a* // looks for 0 or more instances of "a"

Questo dovrebbe essere coperto in qualsiasi esercitazione regex Java o documentazione che si cerca.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.