八度 - 将单词放入向量中
Octave - putting words into vector
我正在创建电子邮件过滤器。我有一封示例电子邮件,内容如下:
Hi how are you lets meet up
我想将这些词中的每一个都放入一个向量中。我正在寻找这样的东西。
Words = ['Hi';'how','are','you','lets','meet','up']
当我进入时
words(1),我想让它显示Hi。
真不知道从何说起。我找到了不同语言的答案,例如 Ruby 和 JS。但不适用于 Octave。
octave:1> words = {'hi', 'how', 'are', 'you', 'lets', 'meet', 'up'};
octave:2> words{1}
ans = hi
你可以使用索引:
octave:4> words{3:4}
ans = are
ans = you
如果你纠结为什么这个 returns 不同的结果:
octave:5> words(3:4)
ans =
{
[1,1] = are
[1,2] = you
}
So with ‘{}’ you access elements of a cell array, while with ‘()’ you access a sub array of a cell array.
添加到 Andy 关于单元格的回答中,您可以将电子邮件作为字符串收集并使用 strtok
、strsplit
等字符串操作对其进行处理,例如
octave:7> s = 'Hi how are you lets meet up';
octave:8> words = strsplit(s, ' ')
words =
{
[1,1] = Hi
[1,2] = how
[1,3] = are
[1,4] = you
[1,5] = lets
[1,6] = meet
[1,7] = up
}
octave:9> words{1}
ans = Hi
我正在创建电子邮件过滤器。我有一封示例电子邮件,内容如下:
Hi how are you lets meet up
我想将这些词中的每一个都放入一个向量中。我正在寻找这样的东西。
Words = ['Hi';'how','are','you','lets','meet','up']
当我进入时
words(1),我想让它显示Hi。
真不知道从何说起。我找到了不同语言的答案,例如 Ruby 和 JS。但不适用于 Octave。
octave:1> words = {'hi', 'how', 'are', 'you', 'lets', 'meet', 'up'};
octave:2> words{1}
ans = hi
你可以使用索引:
octave:4> words{3:4}
ans = are
ans = you
如果你纠结为什么这个 returns 不同的结果:
octave:5> words(3:4)
ans =
{
[1,1] = are
[1,2] = you
}
So with ‘{}’ you access elements of a cell array, while with ‘()’ you access a sub array of a cell array.
添加到 Andy 关于单元格的回答中,您可以将电子邮件作为字符串收集并使用 strtok
、strsplit
等字符串操作对其进行处理,例如
octave:7> s = 'Hi how are you lets meet up';
octave:8> words = strsplit(s, ' ')
words =
{
[1,1] = Hi
[1,2] = how
[1,3] = are
[1,4] = you
[1,5] = lets
[1,6] = meet
[1,7] = up
}
octave:9> words{1}
ans = Hi