Quando uso l'espressione regolare per sostituire gli spazi bianchi, \ s corrisponde anche alla fine di una linea e non solo allo spazio in una linea. Come posso correggere questo per sostituire semplicemente gli spazi bianchi in una riga.
Quando uso l'espressione regolare per sostituire gli spazi bianchi, \ s corrisponde anche alla fine di una linea e non solo allo spazio in una linea. Come posso correggere questo per sostituire semplicemente gli spazi bianchi in una riga.
Risposte:
\s
sta per qualsiasi tipo di spazio bianco, ad es. spazio semplice, tabulazione, interruzione di riga ...
È possibile utilizzare \h
per lo spazio orizzontale: spazio o tabulazione.
Se si desidera abbinare solo spazi tra le parole, è possibile utilizzare: (?<=\S)\h+(?=\S)
dove
(?<=\S)
è uno sguardo positivo che si assicura prima di avere uno spazio non bianco(?=\S)
è uno sguardo positivo che si assicura che dopo non ci sia uno spazio bianco.Puoi abbinare i caratteri specifici degli spazi bianchi che desideri, anziché selezionare tutti i caratteri degli spazi bianchi.
Ad esempio, per abbinare uno o più spazi e schede, utilizzare [ \t]+
. Nota lo spazio AND \ t caratteri saranno abbinati.
([ \t]+)(\S)
. Ciò dovrebbe consentirti di trovare e sostituire utilizzando il modello di sostituzione \t\2
e ottenere le schede dove vuoi