【问题标题】:Searching text of one file in another file by matlab [closed]通过matlab在另一个文件中搜索一个文件的文本[关闭]
【发布时间】:2013-12-08 10:08:41
【问题描述】:

我拥有的是 2 个列向量变量/文件,每个变量/文件都包含文本条目。假设一个是 mx1,另一个是 nx1 (n>m)。并且第一个文件中存在的条目存在于第二个文件中,但可以多次出现。所以我想要条目与第一个文件匹配的第二个文件的所有索引。示例:

第一个文件包含 [am pm cm dm]' 第二个文件包含 [am am bm pm pm pm dm em cm]'

所以答案将返回 [1 2 4 5 6 7 9]'

请帮忙。

如果它可以使第三个文件只有常见条目,如 [am am pm pm pm dm cm]

【问题讨论】:

    标签: matlab matching text-database


    【解决方案1】:

    只需使用ismember:

    1. 假设您的字符串包含在元胞数组中:

      >> cell1 = {'am' 'pm' 'cm' 'dm'};
      cell2 = {'am' 'am' 'bm' 'pm' 'pm' 'pm' 'dm' 'em' 'cm'};
      find(ismember(cell2,cell1))
      
      ans =
      
           1
           2
           4
           5
           6
           7
           9
      
    2. 如果您的字符串都是等长的并且被定义为文本矩阵的行:

      >> matrix1 = ['am';'pm';'cm';'dm'];
      matrix2 = ['am';'am';'bm';'pm';'pm';'pm';'dm';'em';'cm'];
      find(ismember(matrix2,matrix1,'rows'))
      
      ans =
      
           1
           2
           4
           5
           6
           7
           9
      

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-03
      相关资源
      最近更新 更多