我在matlab中分析文件,我想找到字母I(大写)的出现次数。我对如何为此步骤编写正则表达式感到困惑。它会是(lines,'.I.')
吗?任何帮助将不胜感激。
答案 0 :(得分:3)
如果你想计算一个文件中我的资本数量,假设你已经以字符串形式读取了该文件,你可以这样做:
count = sum(file_string == 'I');
如果在这种情况下将文件读入单元格字符串,则可以使用以下方法:
count = sum(strcat(file_cellstr{:}) == 'I');
strcat
会将传递给它的所有字符串连接成一个字符串。将file_cellstr{:}
传递给strcat
基本上将每个单元格(即您的情况下的每一行)连接成一个字符串,然后在其中搜索字母“I”。如果你想找到一个完整的单词,你可以使用
count = length(strfind(strcat(file_cellstr{:}),'word'));
如果您想要正则表达式匹配,可以执行以下操作:
count = length(regexp(strcat(file_cellstr{:}),'[a-z]+'));