eg:
String s=“这是a.line is .over”
应该出来为
“这是一条线。结束了”
我想过两次使用字符串标记器
-first split using"."
-second split using " " to get the first word
-then change charAt[0].toUpper
现在我不确定如何使用字符串标记生成器的输出作为另一个字符串标记生成器的输入?
我也可以使用 split 方法来生成我尝试过的数组
String a="this is.a good boy";
String [] dot=a.split("\\.");
while(i<dot.length)
{
String [] sp=dot[i].split(" ");
sp[0].charAt(0).toUpperCase();// what to do with this part?
使用StringBuilder,无需拆分和创建其他字符串等等,参见代码
public static void main(String... args) {
String text = "this is a.line is. over";
int pos = 0;
boolean capitalize = true;
StringBuilder sb = new StringBuilder(text);
while (pos < sb.length()) {
if (sb.charAt(pos) == '.') {
capitalize = true;
} else if (capitalize && !Character.isWhitespace(sb.charAt(pos))) {
sb.setCharAt(pos, Character.toUpperCase(sb.charAt(pos)));
capitalize = false;
}
pos++;
}
System.out.println(sb.toString());
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)