大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節(jié)點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Java模糊字符串與名稱匹配

Java模糊字符串與名稱匹配

更新時間:2022-12-15 11:48:10 來源:動力節(jié)點 瀏覽2594次

用 Java 編寫的獨立 CSV 數(shù)據(jù)加載過程,它必須使用一些模糊字符串匹配。使用名字和姓氏進行匹配,并在運行開始時緩存所有可能性。找到匹配項后,需要那個人在運行期間在多個地方對象。使用番石榴Objects.hashCode()從名字和姓氏中創(chuàng)建了一個散列。

緩存機制如下所示:

Map<Integer,PersonDO> personCache = Maps.newHashMap();
for(PersonDO p: dao.getPeople()) {
    personCache.put(Objects.hashCode(p.getFirstName(),p.getLastName()), p);
}

大多數(shù)時候,在 firstname+lastname 上都能找到匹配項,但當它沒有匹配到時,就回過頭來使用 ApacheStringUtils.getLevenshteinDistance()來嘗試匹配它。匹配邏輯流程是這樣的:

    person = personCache.get(Objects.hashCode(firstNameFromCSV,lastNameFromCSV));
    if(person == null) {//fallback to fuzzy matching
        person = findClosetMatch(firstNameFromCSV+lastNameFromCSV);
    }

這是findClosetMatch()方法:

private PersonDO findClosetMatch(String name) {
    int min = 15;//initial value
    int testVal=0;
    PersonDO matchedPerson = null;
    for(PersonDO person: personCache.values()) {
        testVal = StringUtils.getLevenshteinDistance(name,person.getFirstName()+person.getLastName());
        if( testVal < min ) {
            min = testVal;
            matchedPerson = person;
        }
    }
    if(matchedPerson == null) {
        throw new Exception("Unable to find person: " + name) 
    }
    return matchedPerson;
}

這適用于簡單的拼寫錯誤、錯別字和縮短的名稱(即 Mike->Michael),但是當完全丟失緩存中的一個傳入名稱時,最終會返回誤報匹配。為了防止這種情況發(fā)生,將最小值設(shè)置findClosetMatch()為 15(即不超過 15 個字符);它大部分時間都有效。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 成人a毛片在线看免费全部播放 | 亚洲一区二区在线视频 | 日日夜夜操视频 | 国产在线免 | 精品中文字幕一区在线 | 精品免费在线视频 | 在线不卡福利 | 黄色影院免费 | 中文字幕 国产精品 | 伊人365影院| 久久综合中文字幕一区二区 | 国产高清在线视频一区二区三区 | 久久九九亚洲精品 | 成年女人视频网站免费m | 国产亚洲精品一区二区在线观看 | 麻豆国产原创最新在线视频 | 国产免费区 | 亚洲一区二区精品 | 国产欧美一区二区 | 四虎影视永久在线 | 久草手机在线 | 亚洲精品欧美一区二区三区 | 国产亚洲玖玖玖在线观看 | 四虎欧美在线观看免费 | 国产在线拍国产拍拍偷 | 日本一级大黄毛片一级 | 91在线看片一区国产 | 日韩亚洲欧美综合一区二区三区 | 久久性视频 | 亚洲综合色视频 | 国产成人精品免费视频大全办公室 | 日韩精品一区二区三区毛片 | 国产成人亚洲精品 | 亚洲精品久久中文字幕 | 成人小视频网 | 免费一级毛片在线播放不收费 | 青青青免费高清视频在线 | 国产亚洲精品久久久久久无 | 久久91亚洲精品久久91综合 | 色淫综合| 成人91视频 |