GNU/Linux >> Belajar Linux >  >> Linux

Tambahkan spasi sebelum huruf besar

Menggunakan sed , dan dengan asumsi Anda tidak menginginkan spasi di depan kata:

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

Substitusi akan mencari huruf besar tepat setelah karakter non-spasi putih lainnya, dan menyisipkan spasi di antara keduanya.

Untuk string dengan lebih dari satu karakter huruf besar berturut-turut, seperti WeAreATeam , ini menghasilkan We Are ATeam . Untuk mengurutkannya, jalankan substitusi untuk kedua kalinya:

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

Perl, menggunakan ekspresi reguler lookbehind dan lookahead dengan lebar nol:

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

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

Versi ini juga memisahkan huruf besar berurutan.


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

Tambahkan spasi di antara huruf yang bukan huruf besar dan huruf yang bukan huruf besar


Linux
  1. Cara Menambahkan Ruang Swap di Ubuntu 22.04

  2. UNIX / Linux:2 Cara Menambahkan Ruang Swap Menggunakan dd, mkswap dan swapon

  3. Bagaimana cara menambahkan ke grup ketika nama memiliki spasi?

  1. Cara Menambahkan Ruang Swap di Ubuntu 18.04

  2. Linux – Menggunakan Spasi Sebelum Partisi Pertama Usb-stick Sebagai Kunci Luks?

  3. Bagaimana Cara Menambahkan Ruang Dari Tidak Terisi Menjadi Diperpanjang?

  1. Cara Menambahkan Ruang Swap di Debian 11

  2. Bagaimana cara menambahkan ruang swap di linux

  3. Tentukan tata urutan dengan LC_COLLATE jadi huruf kecil sebelum huruf besar