【发布时间】:2014-08-01 13:55:03
【问题描述】:
我想打印多个单词的第一个字符,这个单词来自 api,比如 显示名称:arwa othman。 我想打印字母 (a) 和 (o)。 谁能帮帮我??
【问题讨论】:
我想打印多个单词的第一个字符,这个单词来自 api,比如 显示名称:arwa othman。 我想打印字母 (a) 和 (o)。 谁能帮帮我??
【问题讨论】:
这可能对你有用:
String[] splitArray = displayName.split("\\s+");
char[] initials = new char[splitArray.length];
for (int i = 0; i < splitArray.length; i++) {
initials[i] = splitArray[i].charAt(0);
}
这会给你一个 char 数组。如果你想要一个字符串数组,请使用 String.valueOf(char)
【讨论】:
试试这个
public String getFirstWords(String original){
String firstWord= "";
String[] split = original.split(" ");
for(String value : split){
firstWord+= value.substring(0,1);
}
return firstWord;
}
并将其用作
String Result = getFirstWords("arwa othman");
编辑
使用Regex
String name = "arwa othman";
String firstWord= "";
for(String s : name.split("\\s+")){
firstWord += s.charAt(0);
}
String Result = firstWord;
【讨论】:
您可以使用 Apache Commons Langs 库并使用 initials() 方法,您可以从这里获得更多信息http://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/text/WordUtils.html#initials(java.lang.String)
我引用了一个可能有用的示例代码 sn-p:
WordUtils.initials(null) = null
WordUtils.initials("") = ""
WordUtils.initials("Ben John Lee") = "BJL"
WordUtils.initials("Ben J.Lee") = "BJ"
【讨论】: