ฟังก์ชัน levenshtein() ของ PHP
ตัวอย่าง
คำนวณระยะทาง Levenshtein ระหว่างสองตัวเลข:
<?php echo levenshtein("Hello World","ello World"); echo "<br>"; echo levenshtein("Hello World","ello World",10,20,30); ?>
การระบุและการใช้งาน
levenshtein() ฟังก์ชันคืนค่าระยะทาง Levenshtein ระหว่างสองตัวอักษร
Levenshtein ระยะทาง หรือระยะทางแก้ไข คือจำนวนการแก้ไขที่จำเป็นเพื่อการแปลงตัวอักษรหนึ่งเป็นตัวอักษรอีกตัว ซึ่งรวมถึงการแทนที่ตัวอักษร การแสดงตัวอักษร และการลบตัวอักษร
โดยเริ่มต้น PHP จะให้ความมีค่าเดียวกันกับทุกการกระทำ (การแทนที่ การแสดง การลบ) อย่างไรก็ตาม คุณสามารถกำหนดราคาที่ใช้การกระทำที่เลือกได้ (insert, replace, delete) โดยตั้งค่าค่าที่ใช้การกระทำ
หมายเหตุ:levenshtein() ฟังก์ชันไม่แบ่งประเภทตัวอักษรใหญ่หรือเล็ก
หมายเหตุ:levenshtein() ฟังก์ชันเร็วขึ้น similar_text() ฟังก์ชันดีขึ้น แต่ similar_text() ฟังก์ชันสามารถให้ความเรียบร้อยดีขึ้นด้วยจำนวนการแก้ไขที่จำเป็นน้อยกว่า
รูปแบบ
levenshtein(string1,string2,insert,replace,delete)
ตัวแปร | คำอธิบาย |
---|---|
string1 | จำเป็น ต้องใช้ตัวอักษรที่เปรียบเทียบที่หนึ่ง |
string2 | จำเป็น ต้องใช้ตัวอักษรที่เปรียบเทียบที่สอง |
insert | เลือกตั้งได้ ราคาที่ใช้การแสดงตัวอักษร โดยเริ่มต้นค่า 1 |
replace | เลือกตั้งได้ ราคาที่ใช้การแทนที่ตัวอักษร โดยเริ่มต้นค่า 1 |
delete | เลือกตั้งได้ ราคาที่ใช้ตัวเลือก 1 ตัวอักษร โดยเริ่มต้นค่า 1 |
รายละเอียดเทคนิค
ค่าที่คืน | คืนค่าที่แสดงระยะทาง Levenshtein ระหว่างสองตัวอักษรที่ให้มา หากตัวอักษรหนึ่งเกิน 255 ตัวอักษร ก็คืนค่า -1 |
PHP รุ่น: | 4.0.1+ |