Cara Menentukan apakah suatu String Berisi Substring di Bash

Bash

Pengantar Pencocokan String di Bash

Dalam skrip Bash, menentukan apakah suatu string berisi substring tertentu adalah tugas umum. Panduan ini akan mengeksplorasi metode yang tersedia untuk tujuan ini. Kami akan menggunakan berbagai teknik untuk memeriksa substring, memastikan skrip Anda berjalan secara efisien dan efektif.

Kami akan mulai dengan contoh sederhana dan secara bertahap mengeksplorasi metode yang lebih maju. Di akhir panduan ini, Anda akan dapat memilih pendekatan terbaik untuk kebutuhan spesifik Anda dan menulis skrip Bash yang lebih bersih dan mudah dibaca.

Memerintah Keterangan
[[ $string == *"$substring"* ]] Menguji apakah string variabel berisi substring $substring menggunakan pencocokan pola.
grep -q Mode senyap di grep, mengembalikan 0 jika string pencarian ditemukan dan 1 jika tidak, tanpa menghasilkan keluaran apa pun.
echo "$string" | grep Mencari substring di dalam string dengan menyalurkan string ke grep.
case "$string" in *"$substring"*) Menggunakan pernyataan kasus untuk pencocokan pola guna memeriksa apakah substring ada di dalam string.
esac Mengakhiri blok pernyataan kasus.
;; Mengakhiri blok pola dalam pernyataan kasus.
-q Opsi di grep yang menyembunyikan keluaran, berguna untuk memeriksa keberadaan tanpa menampilkan kecocokan.

Memahami Pencocokan String di Bash

Dalam skrip Bash, menentukan apakah suatu string berisi substring tertentu adalah persyaratan umum. Skrip pertama menggunakan kemampuan pencocokan pola Bash. Kondisi memeriksa apakah variabelnya berisi substring . Jika polanya ditemukan, ia akan berbunyi "Ada di sana!". Metode ini ringkas dan efisien untuk pencarian substring sederhana langsung di Bash.

Skrip kedua berfungsi untuk tugas yang sama. Dengan menggemakan dan menyalurkannya ke , kita dapat memeriksa keberadaannya $substring dengan cara yang sedikit berbeda. Itu pilihan memastikan hal itu beroperasi dalam mode senyap, mengembalikan 0 jika substring ditemukan, tanpa keluaran apa pun. Skrip ini berguna ketika Anda perlu memanfaatkannya kemampuan pencarian teks yang kuat dalam skrip Bash.

Menggunakan Pencocokan Pola dan Grep

Skrip ketiga menunjukkan metode lain menggunakan penyataan. Di sini, itu pernyataan memeriksa apakah berisi $substring dengan mencocokkan polanya . Jika polanya ditemukan, maka akan muncul pesan "Ada di sana!". Pendekatan ini berguna untuk kondisi yang lebih kompleks atau saat Anda perlu mencocokkan beberapa pola dalam skrip.

Semua metode ini memberikan cara efisien untuk memeriksa substring di Bash, masing-masing memiliki kelebihannya sendiri. Pencocokan pola dengan langsung dan efisien untuk kasus-kasus sederhana. Menggunakan menawarkan lebih banyak fleksibilitas dan kemampuan pemrosesan teks yang kuat, terutama untuk pencarian string yang lebih kompleks. Itu pernyataan menyediakan cara terstruktur dan mudah dibaca untuk menangani berbagai kondisi dalam skrip Anda. Memahami metode ini memungkinkan Anda memilih pendekatan terbaik untuk kebutuhan skrip spesifik Anda.

Memeriksa apakah suatu String Berisi Substring di Bash

Skrip Bash

#!/bin/bash
# Define the main string
string="My string"
# Define the substring to search for
substring="foo"
# Check if the substring is present
if [[ $string == *"$substring"* ]]; then
  echo "It's there!"
else
  echo "It's not there!"
fi

Menggunakan grep untuk Menemukan Substring di Bash

Skrip Bash dengan grep

#!/bin/bash
# Define the main string
string="My string"
# Define the substring to search for
substring="foo"
# Use grep to check for the substring
if echo "$string" | grep -q "$substring"; then
  echo "It's there!"
else
  echo "It's not there!"
fi

Menggunakan Pernyataan Kasus untuk Memeriksa Substring

Bash Scripting dengan Pernyataan kasus

#!/bin/bash
# Define the main string
string="My string"
# Define the substring to search for
substring="foo"
# Use a case statement to check for the substring
case "$string" in
  *"$substring"*)
    echo "It's there!"
    ;;
  *)
    echo "It's not there!"
    ;;
esac

Teknik Tingkat Lanjut untuk Pencocokan String di Bash

Selain pencarian substring dasar, skrip Bash juga menawarkan teknik lanjutan seperti ekspresi reguler dan perluasan parameter. Ekspresi reguler menyediakan cara yang ampuh untuk mencari pola dalam string. Menggunakan alat seperti dengan opsi (ekspresi reguler yang diperluas) memungkinkan Anda menentukan pola pencarian yang kompleks. Misalnya perintah memungkinkan Anda mencari pola yang lebih spesifik atau fleksibel dalam string Anda. Metode ini ampuh ketika berhadapan dengan format teks variabel.

Teknik lain yang berguna adalah perluasan parameter. Bash menyediakan beberapa bentuk perluasan parameter yang dapat digunakan untuk memanipulasi string dan mengekstrak substring. Misalnya saja sintaksnya mengekstrak substring dari mulai dari untuk tertentu length. Begitu pula dengan polanya menghapus kecocokan terpendek dari dari awal , ketika ${string##substring} menghapus kecocokan terpanjang. Teknik-teknik ini berguna untuk kontrol yang lebih terperinci atas manipulasi string dalam skrip Anda.

  1. Apa cara paling sederhana untuk memeriksa substring di Bash?
  2. Metode paling sederhana adalah dengan menggunakan pencocokan pola dengan sintaksis.
  3. Bagaimana saya bisa menggunakan untuk menemukan substring?
  4. Anda dapat gunakan untuk memeriksa apakah hadir di .
  5. Apa perluasan parameter di Bash?
  6. Perluasan parameter adalah teknik di Bash untuk memanipulasi string. Misalnya, mengekstrak substring.
  7. Bisakah saya menggunakan ekspresi reguler dalam skrip Bash?
  8. Ya, Anda dapat menggunakan ekspresi reguler dengan alat seperti untuk pencocokan pola yang diperluas.
  9. Apa artinya pernyataan yang dilakukan di Bash?
  10. Itu pernyataan memungkinkan pencocokan pola terhadap variabel dan menjalankan perintah berdasarkan pola yang cocok.
  11. Bagaimana bekerja?
  12. Bentuk perluasan parameter ini menghilangkan kecocokan terpendek dari awal .
  13. Apa perbedaan antara Dan ?
  14. Yang pertama menghapus kecocokan terpendek, sedangkan yang kedua menghapus kecocokan terpanjang dari awal .
  15. Bisakah saya memeriksa beberapa substring dalam satu kondisi?
  16. Ya, Anda dapat menggunakan pernyataan untuk memeriksa beberapa pola dalam satu kondisi.
  17. Apa gunanya pilihan di ?
  18. Itu pilihan di menekan keluaran dan hanya mengembalikan status keluar, sehingga berguna untuk pemeriksaan bersyarat.

Menguasai pencocokan string di Bash sangat penting untuk pembuatan skrip yang efisien. Metode yang dibahas mulai dari pencocokan pola dasar hingga penggunaan Dan pernyataan, menawarkan solusi serbaguna untuk kebutuhan yang berbeda. Dengan memahami dan menerapkan teknik ini, Anda dapat meningkatkan fungsionalitas dan keterbacaan skrip Anda, menjadikannya lebih kuat dan lebih mudah dipelihara.