【问题标题】:Retrieve multiple values from matlab string从matlab字符串中检索多个值
【发布时间】:2014-09-25 10:48:26
【问题描述】:

我目前有一个大的单行字符数组...我也有两个数组,第一个数组包含我想从 char 数组中检索的数据的所有起始索引,第二个数组包含所有结束索引为数据。如何在不使用循环的情况下从我的 char 数组中检索所有这些想要的值?

到目前为止我已经尝试过

     chararray(1,start(:):end(:))

但这只会检索我想要的第一个值!

干杯!

【问题讨论】:

  • 你不需要循环吗?for iter = 1:numel(start), chararray(1,start(iter):end(iter))iter 是循环迭代器?
  • @Divakar 嗨,我希望有一个更简单的方法,因为这个循环会非常大!
  • startend 的所有条目的间隔是否相同?间隔如start(1):end(1)start(2):end(2)等。
  • @Divakar 他们都是肯定的! :)

标签: arrays matlab indexing char


【解决方案1】:

试试这个 -

chararray(bsxfun(@plus,start1(:)-start1(1),start1(1):end1(1)))

这将创建一个二维字符数组,其中每一行都是循环代码每次迭代的输出。

另外,请注意我使用start1end1 分别表示您的startend 数组,以免与MATLAB 使用的保留终止范围end 发生冲突。

【讨论】:

    猜你喜欢
    • 2013-05-14
    • 2016-06-13
    • 1970-01-01
    • 1970-01-01
    • 2016-12-05
    • 1970-01-01
    • 1970-01-01
    • 2017-10-10
    • 2016-09-26
    相关资源
    最近更新 更多