MySQL データベースを使用して、グループ チャットで単語の使用状況を追跡したいと考えています。現在、insertWords メソッドに渡されるメッセージは XML 文字列です。'
XML 文字列には、やなどの特殊文字を含めることができます"
。String.replace を使用して XML 形式の文字列を通常のメッセージに変換するよりも良い方法はありますか?
私のメッセージが次の場合:I'm bad, but they aren't that "good"
どうすれば次のように変換できますか:I'm bad, but they aren't that "good"
私のコードは、apos を 2 回挿入し、quot を 2 回挿入します。これを修正するにはどうすればよいですか?
Pattern p = Pattern.compile("[\\w']+");
PreparedStatement insertWordStmt = connection.prepareStatement("INSERT INTO word (word, count) VALUES (?, 1) " +
"ON DUPLICATE KEY UPDATE count=count+1");
public void insertWords(String msg) {
msg = msg.toLowerCase();
try {
Matcher m = p.matcher(msg);
while ( m.find() ) {
String word = msg.substring(m.start(), m.end());
insertWordStmt.setString(1, word);
insertWordStmt.executeUpdate();
}
} catch (SQLException e) {
e.printStackTrace();
}
}