从字符串数组中获取每个单词+彩色单词



我一直在从字符串数组中获取每个单词这是部分代码:

String wordS[] = mystring.split(" ");

然后我想把每个单词储存在wordS[]中,并把储存在wordS[]中的每个单词转换成字符串

示例:

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我的函数只返回最后一个单词,但我希望用户键入所有单词你有个主意吗?

纠正字符串数组的用法

String [] words = mystring.split(" ");

然后使用索引获取每个字符串。例如:words[i],其中i是索引。因此,您可以只使用words[0]words[1]等,而不必为每个声明单独的String,而无需声明附加变量。它与执行以下操作相同:

String s1 = words[0];
String s2 = words[1];
...

关于在TextView中显示,不清楚您想在TextView中显示什么。

TextView text = (TextView) findViewById(Your_Textviw_ID); // you  might have declared it in an XML somewhere. 
text.setText(the_sring_you_want_to_set_it_to);

最新更新