刚想截取一个matlab字符串中间的一段字符,网上搜了一下,发现strfind这个函数是matlab用来查找字符串中的字符的。

help strfind得到的结果:

strfind Find one string within another.

K = strfind(TEXT,PATTERN) returns the starting indices of any

occurrences of the string PATTERN in the string TEXT.返回在这个字符串中所有出现过的位置

strfind will always return [] if PATTERN is longer than TEXT.如果没有目标字符串则返回空矩阵

Examples

s = 'How much wood would a woodchuck chuck?';

strfind(s,'a')    returns  21

strfind('a',s)    returns  []

strfind(s,'wood') returns  [10 23]

strfind(s,'Wood') returns  []

strfind(s,' ')    returns  [4 9 14 20 22 32]

看它的例子发现这个函数很简单,我把我的例子也贴出来:

clear all; close all; clc;

HOGpath='D:\mycode\graduation_project_0403\occlusion\Cir\DATA_list_Circle_hog_data.txt';

indfir=max(strfind(HOGpath,'\'));

indlas=strfind(HOGpath,'.');

xlyb=HOGpath(indfir+1:indlas-1);截取了最后一个‘\’和‘.’之间的字符串。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐