<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.mycompany</groupId>
<artifactId>LevenshteinDistance</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<exec.mainClass>com.mycompany.levenshteindistance.LevenshteinDistance</exec.mainClass>
</properties>
<dependencies>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-text</artifactId>
<version>1.10.0</version>
</dependency>
</dependencies>
</project>
import org.apache.commons.text.*;
import org.apache.commons.text.diff.*;
import org.apache.commons.text.similarity.*;
import org.apache.commons.text.translate.*;
import java.util.HashMap;
import java.util.Locale;
import java.util.Map;
public class LevenshteinDistanceExamples {
public static void main(String[] args) {
String s1 = "appleok";
String s2 = "app1234";
LevenshteinDistance levenshtein = new LevenshteinDistance();
System.out.println("Levenshtein distance: " + levenshtein.apply(s1, s2));
LevenshteinDistance levenshteinWithThreshold = new LevenshteinDistance(3);
// Returns -1 since the actual distance, 4, is higher than the threshold
System.out.println("Levenshtein distance: " + levenshteinWithThreshold.apply(s1, s2));
LevenshteinDetailedDistance levenshteinDetailed = new LevenshteinDetailedDistance();
System.out.println("Levenshtein detailed distance: " + levenshteinDetailed.apply(s1, s2));
}
}