如何在Matlab中将字符串转换为函数句柄?

时间:2015-03-02 10:57:27

标签: matlab

我必须将str='x^2+3'之类的字符串转换为函数。解决方案是获取内联函数f=inline(str),但在将来的版本中将不再支持。

解决方法是f=eval(['@(x)',f]),但它似乎并不是一个简洁的选择。

函数str2func不起作用,因为它只需要现有函数的名称。

1 个答案:

答案 0 :(得分:13)

以下是否有效?

str = 'x^2+3';
f = str2func(['@(x)' str]);