你好同胞程序員,如何在java中實現近乎匹配的字符串?
我想問一些關於字符串匹配的問題。
目前,我有一個存儲描述字符串的程序,用戶可以通過完全或部分地鍵入它來搜索描述。
我想實施一個近似匹配搜索。例如,實際的描述是「hello world」,但用戶錯誤地輸入了搜索「hello eorld」。程序應該能夠將「hello world」返回給用戶。
我試着看模式和匹配來實現它,但它需要一個正則表達式來匹配字符串,從而我的描述沒有規律的模式。我也嘗試過string.contains,但它似乎也不工作。以下是我嘗試實施的代碼的一部分。
ArrayList <String> list = new ArrayList<String>();
list.add("hello world");
list.add("go jogging at london");
list.add("go fly kite");
Scanner scan = new Scanner(System.in);
for(int i = 0; i < list.size(); i++){
if(list.get(i).contains(scan.next())) {
System.out.println(list.get(i));
}
}
難道其他程序員可以幫助我嗎?
雖然我不知道這個方法應該如何去工作,我會去看看它並想出我的實現方式。謝謝SjB:D – melyong