在unityscript中,获取数组中一组字符串中的不同单词

时间:2012-12-04 07:36:15

标签: string loops unity3d distinct unityscript

所以我有一个看起来像这样的数组:

var questans = new String[10, 2];
questans[0,0]="Hey How's it going?";  
questans[0,1]="You know me Just chillin'";
questans[1,0]="Hello there friend";
questans[1,1]="Well met to you too!";
questans[2,0]="I like chocolate pudding";
questans[2,1]="Good for you";

我需要从中提取所有单词。我试着写一个for循环,但它一直给我一些奇怪的错误。

我目前已经找到了代码来查找不同单词的总数:

var ff: String[questans.Length]; //Returned string array
var linenumber = 0; //Current line, 0-index
var spacecount = 0; //Current space in current line, 0-index
for (var line in questans) {
    for (var spaceSplit in line.Split(" ")) {
        ff[linenumber, spacecount] =  spaceSplit[spacecount];
        spacecount++;
    }
    spacecount = 0;
    linenumber++;
}

但是我在获取上面给出的数组中的所有单词时遇到了问题。请帮我解决这个问题。

1 个答案:

答案 0 :(得分:2)

除了@eclanrs所指出的,这里出了什么问题:

  • JS不支持多维数组访问的[x,y]语法。您必须使用嵌套数组。 arr[x,y]只相当于arr[y]
  • for (var line in questans) {不是迭代数组的正确方法,因为你将获得从原型继承的所有属性
  • JS区分大小写,大多数属性都是驼峰式的。 questans.Length必须为questans.length,而line.Split必须为line.split

我建议你阅读一些JS教程来开始,否则你会发现自己迷失了。