我堅持從字符串數組 在這裏得到每個字是部分代碼:獲取每個字
String wordS[] = mystring.split(" ");
那麼我想獲得在放養每個字字[],並經過轉換在字放養每個字[]轉換成String
例如:
mystring = " hi everyone how are you "
String[] wordS = mystring.split(" ");
String word1 = word1 from wordS[](Hi)
String word2 = word2 from wordS[](eeryone)
String word3 = word3 from ... for max 20 strings wich contain 1 word
編輯:
這裏是我的代碼:
String txt = tv.getText().toString();
Pattern mat = Pattern.compile("(?<=\\^)([^0-9]+[0-9]+)|([^^0-9]+$)");
Matcher m = mat.matcher(txt);
while (m.find())
{
String match = m.group();
String n= match.replaceFirst("^[^0-9]+", "");
if (n.length() >= 1)
{
int i = Integer.parseInt(n);
switch (i)
{
case 0:
s = "<font color ='black'>";
break;
case 1:
s = "<font color ='red'>";
break;
case 2:
String green = "#7CFC00";
s = "<font color ='" + green + "'>";
break;
case 3:
String gold ="#FFD700";
s = "<font color ='" + gold + "' >";
break;
case 4:
s = "<font color ='blue' >";
break;
case 5:
String cyan ="#00FFFF";
s = "<font color ='" + cyan + "' >";
break;
case 6:
String magenta ="#FF00FF";
s = "<font color ='" + magenta + "' >";
break;
case 7:
String peru ="#FFC0CB";
s = "<font color ='" + peru + "' >";
break;
case 8:
String gray ="#808080";
s = "<font color ='" + gray + "' >";
break;
case 9:
String orange ="#FFA500";
s = "<font color ='" + orange + "' >";
break;
default:
s = "<font color ='white'>";
}
String replace = match.replaceFirst("[0-9]+$", "");
String[] wordS = replace.split(" ");
showf.setText(Html.fromHtml(s + "" + replace + "</font>"));
}
else
{
showf.setText(match.replaceFirst("[0-9]+$", ""));
}
}
此功能上色字符串的一部分,如果用戶鍵入的它將檢測^ TEST2 < - 「2」 = INT其分配顏色。如果Y型:^ blablabla5它將返回青色文字顏色。工作正常,但現在我想更新我的功能的例子,如果我輸入:^ word4^secondword6 我的功能將只返回最後一個單詞,但我希望由用戶輸入的所有單詞 有你想法嗎?
與數組中的元素一樣創建儘可能多的變量有什麼意義?事實上,你不能那樣做。您無法在運行時創建變量。 –