Matlab在字符串数组中找到特定字符串的位置

今天给大家带来怎样在一个字符串数组中找到某个字符串的位置。

比如在E盘的example文件夹里有一堆txt文件,名字分别如下:

1.       American.txt
2.       Brazil.txt
3.       China.txt
4.       Denmark.txt
5.       Germany.txt

A=dir(fullfile('E:\example\','*.txt'));                % 浏览所有这个文件夹中的txt,A是一个结构体
N=length(A);
B={A(1:N).name};                                                         % 将A结构体中的name这一项付给B,B是一个cell类型的
K=strfind(B,'China');                                                   % 在B中查找是否包含China字符,K是一个cell类型的          
for j=1:N
     a=isempty(K{j});                                                       % 一个一个的判断,看K哪个位置不是空的
     if a==0
           ThatOne=j;                                                               % 不是空的那个个位置,就是China所在位置
           break
     end
end
disp(ThatOne);                                                               % 可以看出,ThatOne = 3.


MATLAB 字符串 strfind 字符串位置
  • 1
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Matlab 可以使用 csvread 函数来导入 CSV 文件的数据。如果 CSV 文件包含字符串数据,可以使用 readtable 函数读取,该函数会将数据转换为表格形式,其字符串数据也将被保留。您可以通过指定数据类型来读取特定列,例如: T = readtable('myfile.csv', 'ReadVariableNames', true, 'ReadRowNames', false, 'Format', '%s%f%f'); 其,第一列的数据将被读取为字符串,第二列和第三列的数据将被读取为浮点数。 您也可以使用 textscan 函数读取 CSV 文件的数据,该函数可以按照指定的格式读取文件的数据。例如: fid = fopen('myfile.csv'); C = textscan(fid, '%s%f%f', 'Delimiter', ','); fclose(fid); 这样,第一列的数据将被读取为字符串,第二列和第三列的数据将被读取为浮点数,并存储在 C 数组中。 ### 回答2: 在MATLAB,可以使用readtable函数导入字符串数组csv文件。 使用以下步骤导入: 1. 打开MATLAB软件。 2. 在当前工作目录下准备一个csv文件,该文件包含字符串数组数据。 3. 在MATLAB命令窗口输入以下代码: ```matlab data = readtable('文件路径\文件名.csv'); ``` 请将"文件路径"和"文件名"替换为实际的文件路径和文件名。 4. 运行以上代码后,MATLAB将会将csv文件字符串数组数据导入到一个名为"data"的表格变量。 5. 可以通过查看表格变量来确认数据是否正确导入。例如,输入以下代码: ```matlab data ``` 6. 运行以上代码后,MATLAB将输出表格变量"data"的数据。 值得注意的是,如果csv文件包含列标题,则可以使用'HeaderLines'选项来指定需要跳过的行数。例如,如果csv文件的第一行为列标题,则可以使用以下代码导入数据: ```matlab data = readtable('文件路径\文件名.csv', 'HeaderLines', 1); ``` 在导入字符串数组csv数据之后,您可以使用MATLAB的其他函数和方法对数据执行各种操作。 ### 回答3: 在MATLAB,可以使用`readtable`函数或`csvread`函数来导入字符串数组CSV文件。 1. 使用`readtable`函数导入: ```matlab data = readtable('文件路径.csv'); strArray = table2cell(data); ``` 上述代码首先使用`readtable`函数读取CSV文件,然后使用`table2cell`函数将表格转换为字符串数组。 2. 使用`csvread`函数导入: ```matlab data = csvread('文件路径.csv',1,0); [m, n] = size(data); strArray = cell(m, n); for i = 1:m for j = 1:n strArray{i, j} = num2str(data(i, j)); end end ``` 上述代码使用`csvread`函数读取CSV文件,并将数据存储在`data`。然后,使用循环将数字转换为字符串存储在`strArray`。 无论使用哪种方法,最终都可以将CSV文件字符串数组导入到MATLAB

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值