7

如果这是一个新手问题,我深表歉意,但我已经阅读了这里的文档,它没有说明在使用子字符串之前必须输入任何命令。

但是,当我尝试按如下方式调用它时:

子字符串('你好世界',2)

它给了我错误

???'char' 类型的输入参数的未定义函数或方法 'substring'。

调用 this 的正确方法是什么substring

4

3 回答 3

16

不要减损 OP 的答案,它实际上更直接地解决了您提出的问题,但假设您想要做的只是从字符串中提取一定数量的字符,那么您只需要 MATLAB 的索引:

myString = 'Hello, world!';
mySubstring = myString(3:end)
mySubstring =

llo, world!
于 2013-04-21T08:20:48.680 回答
3

substring 根本不是 MATLAB 函数,至少在 MATLAB 中是这样。有一个子字符串 JAVA 函数,但我不知道这是否是你要问的。

>> which substring
substring is a Java method  % java.lang.String method

以上还告诉你你需要做什么。看这里。(谷歌是你的朋友。当然,你可以很容易地完成我刚才所做的事情,并且更快地得到这个答案。)

您可能还在谈论一些自定义代码,由您的某个同事编写。在这种情况下,请与您的朋友交谈。我经常听到有人编写的工具,然后作为遗留代码留下,不受支持。最终,当安装新版本的 MATLAB 时,它会因为路径问题而消失。

于 2013-04-21T00:55:07.330 回答
0

你可能真的想要strsplit。这将通过给定或默认分隔符解析 char 数据,并返回片段的单元格数组。

于 2015-05-27T16:47:02.660 回答