PHP levenshtein() 함수
예제
두 문자열 간의 Levenshtein 거리를 계산합니다:
<?php echo 레베넨슈타인("Hello World","ello World"); echo "<br>"; echo 레베넨슈타인("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. |
기술 세부 사항
반환 값: | 두 개의 문자열 사이의 Levenshtein 거리를 반환합니다. 하나의 문자열이 255자를 초과하면 -1을 반환합니다. |
PHP 버전: | 4.0.1+ |