Matlab中在表格中寻找指定汉字,并返回其所在行数, 将该行数的另一列提取出来。
目录
一、前言
二、直接在命令行输出
三、保存筛选数据excel
一、前言
源数据excel:
指定汉子:买,得到下面数据:
二、直接在命令行输出
% 读取 Excel 表格数据
data = readcell('测试.xlsx');
% 指定要查找的汉字
specified_char = '买';
% 找到第一列中包含指定汉字的行数
specified_rows = find(contains(data(:,1), specified_char));
% 提取第二列中对应行的数据,并转换为字符串
extracted_data = cellfun(@num2str, data(specified_rows, 2), 'UniformOutput', false);
% 显示结果
for i = 1:length(specified_rows)
% 去除额外字符
extracted_data_i = strrep(extracted_data{i}, '{', '');
extracted_data_i = strrep(extracted_data_i, '}', '');
% 输出结果
fprintf('%s\t%s\n', data{specified_rows(i), 1}, extracted_data_i);
end
输出图:
三、保存筛选数据excel
% 读取 Excel 表格数据
data = readcell('测试.xlsx');
% 指定要查找的汉字
specified_char = '买';
% 找到第一列中包含指定汉字的行数
specified_rows = find(contains(data(:,1), specified_char));
% 提取第二列中对应行的数据,并转换为字符串
extracted_data = cellfun(@num2str, data(specified_rows, 2), 'UniformOutput', false);
% 创建新的表格保存提取的数据
result_table = table(data(specified_rows, 1), extracted_data, 'VariableNames', {'汉字', '数字'});
% 将结果写入新的 Excel 文件
writetable(result_table, 'result.xlsx');
点个关注,不会迷路!