让我说我有字符串:
Java Android iOS
我需要它的输出:
%java%
%android%
%ios%
或
%java%%android%%ios%
我该怎么做?
对不起,也许我没解释好。
String tok[]=input1.split(" ");
for(String t:tok){
System.out.println("%"+t.toLowerCase()+"%");
}
这可能是一个很好的答案,但我忘了提到我需要保存,不仅打印,所以最好的结果将如例2所示,所以只需在每个单词周围添加%..%
答案 0 :(得分:5)
请尝试以下操作:
String test="Java Android iOS";
String tok[]=test.split("\\s+");
for(String t:tok){
System.out.println("%"+t.toLowerCase()+"%");
}
输出
%java%
%android%
%ios%
基本上你需要的是从空格字符中分割字符串,这可以由split()完成,然后根据你的意愿添加内容。
答案 1 :(得分:3)
您可以尝试replaceAll()
和split()
:
public static void main(String[] args) {
String s = "Java Android iOS";
s = s.replaceAll("\\b(\\w+)\\b", "%$1%"); // capture and add
String[] arr = s.split("\\s+");
for (String str : arr) {
System.out.println(str);
}
}
O / P:
%Java%
%Android%
%iOS%
答案 2 :(得分:1)
public String wrap(String input)
{
String[] words = input.split(" "); //get array of words
StringBuilder sb = new StreingBuilder(); //this is for perfomance
for(String word : words) //affect each word in string
{
sb.append("%").append(word).append("%");
//add %current_word% to result (if need, you may add space too
}
return sb.toString();
}
答案 3 :(得分:1)
试试这段代码:
String x = "I love java programming";
String arrayX[] = x.split(" ");
for(int i = 0; i<arrayX.length; i++){
System.out.println("%"+arrayX[i].toLowerCase()+"%");
}
输出: %一世% %爱% %纯Java% %编程%
答案 4 :(得分:0)
String example = "Java Android Ios";
String token[] = example.split("\\s+");
for(int i = 0; i < token.length; i++)
{
//%java%%android%%ios%
System.out.print("%" + token[i].toLowerCase() + "%");
//%java%
//%android%
//%ios%}
System.out.println("%" + token[i].toLowerCase() + "%");