我想将短字替换为原始字,如
1.>wrd---word
2.>congrats---congratulations
3.>oswm-----------owesome
4.>awsum ------- owesome
表情符号不包含所有这类词语
答案 0 :(得分:2)
假设你实际上知道你要用什么替换,你可能想要设置某种Map<String, String>
然后循环输入中的每个单词w
字符串并将其替换为yourMap.get(w)
。
以下是您的示例摘录:
Map<String, String> dict = new HashMap<String, String>() {{
put("wrd", "word");
put("congrats", "congratulations");
put("oswm", "awesome");
put("awsum", "awesome");
}};
String input = "Here's an awsum example wrd, congrats!";
StringBuffer result = new StringBuffer();
Pattern p = Pattern.compile("\\w+");
Matcher m = p.matcher(input);
while (m.find()) {
String toInsert = m.group();
if (dict.containsKey(toInsert))
toInsert = dict.get(toInsert);
m.appendReplacement(result, toInsert);
}
m.appendTail(result);
System.out.println(result);
<强>输出:强>
Here's an awesome example word, congratulations!
答案 1 :(得分:0)
建立你自己的字典。将其加载到类似HashMap的内容中并开始运行。
我确信Scanner之类的内容可能有用,或者只是使用类似String.split的内容
答案 2 :(得分:0)
我发现这是一个很好的资源:http://www.internetslang.com/
不幸的是,他们不允许您下载完整的首字母缩略词列表,您可以在几分钟内手动完成。只需点击26次,然后选择全部+复制+粘贴。