【发布时间】:2021-09-16 12:25:09
【问题描述】:
目前,我可以将英语单词翻译成猪拉丁语。我的实验室任务说,单词之前出现的标点符号应该被删除、存储并添加到piglatinized单词的前面。单词之后出现的标点符号应该被删除、存储并附加到piglatinized单词中。单词中间的任何标点符号都将被视为普通字母。
例如:
- 什么? -> 怎么了?
- 哦!!! -> 哦哦!!!
- “你好”->“hellohay”
- 不要 -> 当天
- "pell-mell" -> "ell-mellpay"
这就是我现在要查找和存储标点符号的内容:
public static final String punct = ",./;:'\"?<>[]{}|`~!@#$%^&*()";
String startPunct = "";
String endPunct = "";
for (int c = 0; c < s.length(); c++) {
for (int i = 0; i < punct.length(); i++) {
if (s.charAt(c) == punct.charAt(i)) {
startPunct = startPunct + s.charAt(c);
}
}
}
如果需要,这是我如何打印翻译后的单词的基本思路:
s = s.substring(i) + s.substring(0, i) + "ay";
return s;
所以问题是,我如何保留标点符号,以便它出现在翻译单词的开头和结尾(最好是递归,但正则表达式很好)?
非常感谢任何帮助。提前致谢。
【问题讨论】: