Ekspresi Reguler Sed di Linux

Editor Aliran

Perintah sed digunakan untuk pengeditan aliran.

Contoh:

bashSalin kodeecho interactive | sed 's/inte/dist/'
echo interactive | sed 's:inte:dist:'
echo interactive | sed 's_inte_dist_'
echo interactive | sed 's|inte|dist|'

Lihat snapshot di atas, string ‘interactive’ diubah menjadi ‘distractive’ dengan perintah sed. Selain garis miring (“/”), titik dua (“:”), garis bawah (“_”), dan pipa (“|”) juga akan bekerja.

Editor Interaktif

Perintah sed dimaksudkan sebagai editor aliran, namun juga dapat digunakan sebagai editor interaktif pada file. Untuk editor interaktif, opsi ‘i’ digunakan.

Contoh:

arduinoSalin kodesed -i 's/today/tomorrow/' file

Lihat snapshot di atas, string ‘today’ diubah menjadi ‘tomorrow’ dalam ‘file’.

Referensi Balik Sederhana

Double ampersand digunakan untuk mencari dan menemukan string yang ditentukan. Ini akan mencetak string yang ditemukan dengan perintah sed.

Contoh:

bashSalin kodeecho fourty | sed 's/four/&&/'

Lihat snapshot di atas, ampersand mencari string ‘four’ dan mencetaknya sebagai ‘fourfourty’.

Titik untuk Karakter Apa Saja

Dalam regex, titik sederhana dapat menandakan karakter apa saja.

Contoh:

bashSalin kodeecho xxxx-xx-xx | sed 's/....-..-../YYYY-MM-DD/'

Lihat snapshot di atas, titik-titik diganti dengan format tanggal.

Referensi Balik Ganda

Ketika lebih dari satu pasangan tanda kurung digunakan, ini disebut pengelompokan. Di sini masing-masing dapat direferensikan secara terpisah sebagai tiga angka berturut-turut.

Contoh:

bashSalin kodeecho 2014-06-30 | sed 's/\(....\)-\(..\)-\(..\)/\1:\2:\3/'
echo 2014-06-30 | sed 's/\(....\)-\(..\)-\(..\)/\1_\2_\3/'
echo 2014-06-30 | sed 's/\(....\)-\(..\)-\(..\)/\2:\3:\1/'
echo 2014-06-30 | sed 's/\(....\)-\(..\)-\(..\)/\3:\2:\1/'

Lihat snapshot di atas, tanggal dicetak dalam format yang berbeda. Di sini, 2014 direferensikan sebagai (1), 06 direferensikan sebagai (2) dan 30 direferensikan sebagai (3).

Spasi

Sintaks spasi adalah ‘\s’ dan sintaks spasi tab adalah ‘\t’.

Contoh:

bashSalin kodeecho -e 'this\tis\tjavatpoint' | sed 's/\s/ /g'

Lihat snapshot di atas, ‘\s’ digunakan untuk satu spasi.

Kemunculan Opsional

Anda dapat menentukan sesuatu yang opsional dengan menentukannya dengan tanda tanya (?).

Contoh:

bashSalin kodecat list2 | sed 's/iii\?/Y/'

Lihat snapshot di atas, kita telah membuat ‘i’ ketiga menjadi opsional. Ini berarti dua ‘i’ harus diubah menjadi ‘Y’.

Kemunculan Sebanyak n Kali

Kemunculan sejumlah kali tertentu ditentukan oleh “{times}”.

Contoh:

bashSalin kodecat list2 | sed 's/i\{3\}/Y/'

Lihat snapshot di atas, kita telah menentukan kemunculan ‘i’ sebanyak tiga kali tepatnya.

Kemunculan dalam Rentang

Kita juga dapat menentukan kemunculan dalam istilah rentang. Misalnya, jika kita menentukan rentang sebagai {m,n}, maka ‘m’ menunjukkan kemunculan minimal dan ‘n’ menunjukkan kemunculan maksimal.

Contoh:

bashSalin kodecat list2 | sed 's/i\{3,4\}/Y/'

Lihat snapshot di atas, kita telah menentukan rentang minimal 3 dan rentang maksimal 4.

ref: [1]

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *