gpt4 book ai didi

string - 关于 Matlab : passing strings as split parameters to function 的问题

转载 作者:行者123 更新时间:2023-12-04 06:26:37 25 4
gpt4 key购买 nike

嘿,
我有以下问题:
我在matlab中有一个字符串:

str='foo bar'

我想用于某个命令:
mex(..., str)

这不起作用,因为 mex 处理 str作为一个参数(因此为 mex(..., 'foo bar') )。如何做到这一点,matlab 将其识别为这样的函数调用:
mex(..., 'foo', 'bar')

我没有在这个带有 2 个参数的示例中进行硬编码,也可能出现字符串扩展为 str='foo bar blupp' 的情况。 -> 通过 mex(..., 'foo', 'bar', 'blupp') .

谢谢!

最佳答案

使用 strread转换为元胞数组,然后 {:}索引以将其扩展回“逗号分隔列表”。

>> x = 'foo bar baz'
x =
foo bar baz
>> xc = strread( x, '%s' )
xc =
'foo'
'bar'
'baz'
>> fprintf( 'Hello: %s\n', xc{:} )
Hello: foo
Hello: bar
Hello: baz

最后一行完全等同于
fprintf( 'Hello: %s\n', 'foo', 'bar', 'baz' )

关于string - 关于 Matlab : passing strings as split parameters to function 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5977051/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com