Apps Artificial Intelligence CSS DevOps Go JavaScript Laravel Linux MongoDB MySQL PHP Python Rust Vue

Mencari Teks di String dengan Fungsi Custom di Python

1 min read .
Mencari Teks di String dengan Fungsi Custom di Python

Kadang-kadang, waktu ngoding, saya perlu nyari teks spesifik di dalam string panjang. Python punya metode bawaan, tapi kadang pengen kontrol lebih: misal dapat beberapa karakter sebelum dan sesudah keyword. Nah, di sini saya tunjukin cara bikin fungsi FindText custom buat tujuan itu.

1. Fungsi FindText

Fungsinya simpel: cari substring di string besar, lalu return potongan teks substring itu. Bisa juga tentuin berapa banyak karakter sebelum dan sesudah substring.

def FindText(text, keyword, space=100):
    idx = text.find(keyword)
    if idx > -1:
        start = max(idx - space, 0)
        end = min(len(text), idx + len(keyword) + space)
        return text[start:end]
    else:
        return 'not found'

2. Penjelasan Singkat

  • text.find(keyword) → cari posisi substring. Kalau nggak ada, balik -1.
  • start → awal potongan teks: idx - space, tapi nggak boleh negatif.
  • end → akhir potongan teks: idx + len(keyword) + space, maksimal panjang string.
  • Return → kalau ketemu, return potongan teks; kalau nggak, return 'not found'.

3. Contoh Penggunaan

text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
substring = "consectetur"
result = FindText(text, substring, space=20)
print(result)

Output:

"m dolor sit amet, consectetur adipiscing elit. Sed do eiusmod"

Jadi, fungsi ini ambil 20 karakter sebelum dan sesudah substring "consectetur".

4. Kalau Substring Tidak Ditemukan

text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit."
substring = "python"
result = FindText(text, substring)
print(result)  # Output: 'not found'

Kesimpulan

Gini deh, FindText itu bikin kita bisa search substring dengan kontrol lebih atas konteks. Berguna banget buat dokumen panjang, analisis teks, atau preprocessing data sebelum dianalisis lebih lanjut.

Lihat Juga

chevron-up