Matlab 如何阅读答案中的特定数字(或单词)

Matlab 如何阅读答案中的特定数字(或单词),matlab,netcdf,Matlab,Netcdf,我在matlab中读取一个.nc文件,从时间变量中获取信息 代码如下所示 >> ncreadatt(model_list{3},'T','units') ans = 'months since 1850-01-01' 我想做的是从答案中得到'1850'。是解析和操作字符串的非常强大的工具。 Matlab具有以下命令: 结果是: year = 1850 使用的正则表达式'\s(\d+)-'表示: \s-查找单个空白字符(1850之前的空格)。 (\d+)-查找一个或多个数字(“

我在matlab中读取一个.nc文件,从时间变量中获取信息

代码如下所示

>> ncreadatt(model_list{3},'T','units')
ans = 
'months since 1850-01-01'
我想做的是从答案中得到
'1850'

是解析和操作字符串的非常强大的工具。
Matlab具有以下命令:

结果是:

year = 
1850
使用的正则表达式
'\s(\d+)-'
表示:

\s
-查找单个空白字符(1850之前的空格)。
(\d+)
-查找一个或多个数字(
“\d+”
),括号表示所有匹配的字符都将保存为“标记”。
'-'
-在数字后查找单个
'-'

您可以使用它。

是解析和操作字符串的非常强大的工具。
Matlab具有以下命令:

结果是:

year = 
1850
使用的正则表达式
'\s(\d+)-'
表示:

\s
-查找单个空白字符(1850之前的空格)。
(\d+)
-查找一个或多个数字(
“\d+”
),括号表示所有匹配的字符都将保存为“标记”。
'-'
-在数字后查找单个
'-'


您可以打开它。

如果格式一致,则只需执行
ans(12:16)
即可获得第12到第16个值,即年份。您可以使用
str2num(ans(12:16))
将其转换为数字,如果格式一致,则只需执行
ans(12:16)
即可获得第12到第16个值,即当年的值。您可以使用
str2num(ans(12:16))