GNU/Linux >> Tutoriales Linux >  >> Linux

Agregar espacio antes de la letra mayúscula

Usando sed , y suponiendo que no desea un espacio delante de la palabra:

$ sed 's/\([^[:blank:]]\)\([[:upper:]]\)/\1 \2/g' file.in
Add Data
Test Something
Tell Me Who You Are

La sustitución buscará una letra mayúscula inmediatamente después de otro carácter que no sea un espacio en blanco e insertará un espacio entre los dos.

Para cadenas con más de un carácter consecutivo en mayúsculas, como WeAreATeam , esto produce We Are ATeam . Para ordenar esto, ejecute la sustitución por segunda vez:

$ sed -e 's/\([^[:blank:]]\)\([[:upper:]]\)/\1 \2/g' \
      -e 's/\([^[:blank:]]\)\([[:upper:]]\)/\1 \2/g' file.in

Perl, utilizando expresiones regulares de ancho cero de búsqueda posterior y anterior:

$ perl -pe 's/(?<=\w)(?=[A-Z])/ /g'  file.in 

Tell Me Who You Are                    ## TellMeWhoYouAre
I Am A Regular Expression User         ## IAmARegulaExpressionUser

Esta versión también separa letras mayúsculas consecutivas.


sed -r -e "s/([^A-Z])([A-Z])/\1 \2/g"

Agregar espacio entre una letra que no sea mayúscula y una letra que sea mayúscula


Linux
  1. Linux:¿usar el espacio antes de la primera partición de la memoria USB como clave Luks?

  2. ¿Cómo agregar espacio de no asignado a extendido?

  3. Cómo agregar espacio de intercambio en Debian 11

  4. Cómo agregar espacio de intercambio en Ubuntu 22.04

  5. UNIX/Linux:2 formas de agregar espacio de intercambio usando dd, mkswap y swapon

Cómo agregar espacio de intercambio en Debian 9

Cómo agregar espacio de intercambio en Debian 10 Linux

Cómo agregar espacio de intercambio en Debian 10

Cómo agregar espacio de intercambio en Ubuntu 20.04

Cómo agregar espacio de intercambio en Debian 11

Agregue espacio en disco después de cambiar el tamaño de un servidor en la nube de Windows Server 2012