Android

Cara memeriksa apakah string berisi substring dalam bash

Python Tutorial For Beginners | Python Full Course From Scratch | Python Programming | Edureka

Python Tutorial For Beginners | Python Full Course From Scratch | Python Programming | Edureka

Daftar Isi:

Anonim

Salah satu operasi paling umum ketika bekerja dengan string di Bash adalah untuk menentukan apakah suatu string berisi string lain atau tidak., kami akan menunjukkan kepada Anda beberapa cara untuk memeriksa apakah string berisi substring.

Menggunakan Wildcard

Pendekatan termudah adalah mengelilingi substring dengan simbol wildcard asterisk (asterisk) * dan membandingkannya dengan string. Wildcard adalah simbol yang digunakan untuk mewakili nol, satu atau lebih karakter.

Jika tes mengembalikan true , substring terkandung dalam string.

Dalam contoh di bawah ini, kami menggunakan pernyataan if dan operator persamaan ( == ) untuk memeriksa apakah SUB substring ditemukan dalam string STR :

#!/bin/bash STR='GNU/Linux is an operating system' SUB='Linux' if]; then echo "It's there." fi

Ketika dieksekusi, skrip akan menampilkan:

It's there.

Menggunakan operator kasing

Alih-alih menggunakan pernyataan if, Anda juga dapat menggunakan pernyataan case untuk memeriksa apakah suatu string menyertakan string lain atau tidak.

#!/bin/bash STR='GNU/Linux is an operating system' SUB='Linux' case $STR in *"$SUB"*) echo -n "It's there.";; esac

Menggunakan Operator Regex

Pilihan lain untuk menentukan apakah substring yang ditentukan terjadi dalam string adalah menggunakan operator regex =~ . Ketika operator ini digunakan, string yang tepat dianggap sebagai ekspresi reguler.

Periode yang diikuti oleh tanda bintang .* Cocok dengan nol atau lebih kemunculan karakter apa pun kecuali karakter baris baru.

#!/bin/bash STR='GNU/Linux is an operating system' SUB='Linux' if]; then echo "It's there." fi

Script akan mengulangi yang berikut:

It's there.

Menggunakan Grep

Perintah grep juga dapat digunakan untuk menemukan string di string lain.

Dalam contoh berikut, kami meneruskan string $STR sebagai input untuk grep dan memeriksa apakah string $SUB ditemukan dalam string input. Perintah akan mengembalikan true atau false sesuai.

#!/bin/bash STR='GNU/Linux is an operating system' SUB='Linux' if grep -q "$SUB" <<< "$STR"; then echo "It's there" fi

Opsi -q memerintahkan grep untuk diam, untuk menghilangkan output.

Kesimpulan

Memeriksa apakah string berisi substring adalah salah satu operasi paling dasar dan sering digunakan dalam skrip Bash.

Setelah membaca tutorial ini, Anda harus memiliki pemahaman yang baik tentang bagaimana menguji apakah suatu string menyertakan string lain. Anda juga dapat menggunakan perintah lain seperti awk atau sed untuk pengujian.

terminal bash