我有一個公司的字符串描述,這是由不同用戶(手工輸入)編寫的令人討厭的字符串。下面是一個例子(重點點,空格,首字母等):Java字符串格式化解決方案
XXXX是全球menagement諮詢,技術服務和 外包服務公司,257000people服務客戶超過 120個國家。結合無與倫比的經驗,全面的 能力橫跨所有行業和業務功能,並且 廣泛研究世界上最成功的公司,XXXX 與客戶合作,幫助他們成爲高績效的 企業和政府。,公司產生淨收入 截至2012年7月31日止財政年度爲279億美元..
現在,我想要的是字符串格式化爲更好一點的版本是這樣的:
XXXX是全球領先的管理諮詢,技術服務和 外包公司,擁有257,000人口以上的客戶提供服務比 120個國家。結合無與倫比的經驗,綜合所有行業和業務功能 能力,和 廣泛研究全球最成功的公司,XXXX 與客戶合作,幫助他們成爲高性能 企業和政府。該公司淨收入的 US $ 27.9十億截至8月31日的財年,2012年
我的問題是:是否有與已經定義的方法任何庫,它可以做所有的拼寫校正,不需要去除空間等等。?
到目前爲止,如果是「///」,我會將其替換爲「,」替換爲「,」和toUpperCase()。在前面等..
desc = desc.replace(" ", " ");
desc = desc.replace("..", ".");
desc = desc.replace(" .", ".");
desc = desc.replace(" ,", ", ");
desc = desc.replace(".,", ".");
desc = desc.replace(",.", ".");
desc = desc.replace(", .", ".");
desc = desc.replace("*", "");
我敢肯定有一個更乾淨和更好的版本來做到這一點。使用正則表達式可能?
任何解決方案,將不勝感激。
你想要做的替換是相當複雜的,所以你需要一個解析器esp翻譯日期格式。 –
日期格式不是強制性的東西,我更關注像點,逗號,空格,第一個字母,逗號/點之間的空格等簡單的更正。我們確實有如何寫這些東西的規則:after一個點必須在另一個句子之前有一個空閒空間..等。 – AlenBer
是的,你應該嘗試使用正則表達式。你有什麼嘗試? –