Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
String 如何在matlab中使用多个分隔符读取字符串_String_Matlab - Fatal编程技术网

String 如何在matlab中使用多个分隔符读取字符串

String 如何在matlab中使用多个分隔符读取字符串,string,matlab,String,Matlab,我用Matlab来处理一个复杂且非标准格式的大文件。这就是为什么我选择使用strread命令。现在,我想进一步拆分一个字符串变量,取自输入文件。例如: str='DIDYMO-OREST.1;DIDYMOTE.150.L150;1;LINE' [dev nod conn equip]= strread(str,'%s %s %d %s','delimiter',';'); nod变量是: nod = 'DIDYMOTE.150.L150' 如何使用点('.')作为分隔符拆分此变量 resul

我用Matlab来处理一个复杂且非标准格式的大文件。这就是为什么我选择使用strread命令。现在,我想进一步拆分一个字符串变量,取自输入文件。例如:

str='DIDYMO-OREST.1;DIDYMOTE.150.L150;1;LINE'
[dev nod conn equip]= strread(str,'%s %s %d %s','delimiter',';');
nod变量是:

nod = 'DIDYMOTE.150.L150'
如何使用点('.')作为分隔符拆分此变量

result = regexp(nod,'\.','split');
这将给出字符串的单元格数组。以你为例,

>> result{:}

ans = 

    'DIDYMOTE'    '150'    'L150'

请注意,如果要按标题所示在多个分隔符上拆分,只需将regexp行更改为类似于
regexp(str,[|.|-],'split')
的内容,其中第二个参数包含所有必要的分隔符,这些分隔符由
分隔,不要忘记转义类似
的分隔符,在
regexp
(也就是说,以
\.
的形式编写)中有特殊意义的代码。当我测试它时,MATLAB似乎并不在意,但无论如何这样做都是很好的实践。好球