Saya menggunakan tre-agrep
(manpage) , sebuah implementasi dari agrep
(manpage) , untuk melakukan pencocokan pola perkiraan. Utilitas ini mencari kecocokan berdasarkan jarak Levenshtein , dan pengguna dapat mengonfigurasi penalti yang diterapkan untuk substitusi, penyisipan, atau pengeditan penghapusan.
Namun, saya ingin menerapkan bobot secara berbeda di seluruh panjang kueri, yaitu dengan bobot yang lebih rendah untuk penghapusan di awal (ujung kiri) kueri daripada di kanan. The man
halaman untuk utilitas ini tidak menunjukkan bahwa seperti tingkat kontrol adalah mungkin.
Apakah ada alat baris perintah lain di mana perkiraan pencocokan dengan kontrol yang lebih baik atas hukuman ketidakcocokan mungkin?
agrep
sebenarnya mereka butuhkan, saya mungkin bisa menyiapkan sesuatu. Menghitung jarak Levenshtein dari dua string sangat mudah, sungguh. Saya sarankan skrip shell melilit doa GNU awk.Jawaban:
Tidak. Kustomisasi semacam itu berada di luar lingkup alat Linux dan menjadi lingkup penulisan kode Anda sendiri. Menggunakan bahasa tingkat tinggi yang populer (Java, JavaScript, Python, Perl) akan menggunakan sedikit lebih banyak memori daripada C dan menjadi sedikit lebih lambat untuk bahasa skrip tetapi kemungkinan akan diabaikan untuk kasus penggunaan Anda. Jadi tanyakan kembali pada stackoverflow dengan detail persis yang Anda butuhkan dan seseorang mungkin menawarkan satu liner.
sumber