use*_*270 0 matlab matlab-figure
给定源代码时如何获得年份(4位数),我只能检测到第29天,但无法检测到年份(1997年).我的正则表达式检查有问题.
age = regexp(CharData,'(\d{1,4})','match','once')
Run Code Online (Sandbox Code Playgroud)
例如,
1997年3月29日注册
期望的产出: 1997年
错误输出: 29
for i = 1:2
data2=fopen(strcat('DATA\PRE-PROCESS_DATA\F22_TR\f22_TR_pdata_',int2str(i),''),'r')
CharData = fread(data2, '*char'); %read text file and store data in CharData
fclose(data2);
age = regexp(CharData,'(\d{4})','match','once')
end
Run Code Online (Sandbox Code Playgroud)
file:f22_TR_pdata_1 - > 1997年6月24日注册
档案:f22_TR_pdata_2 - > 1997年3月29日注册
年龄: 1997年
只能抓四位数
age = regexp(CharData,'(\d{4})','match','once')
Run Code Online (Sandbox Code Playgroud)
这样做d{1,4} 的手段寻找与数字1和4含义之间的长度,1,29,123,4444将所有的比赛,因为它们的长度是1和4之间
d{4} 说,让我数与4含义,确切的长度1997,2001,1800将所有的比赛.