a="abcdefghijklmnopqrstuvwxyz"%matlab中是一字元陣列的形式儲存字串的b=a(5:8)%可以像呼叫陣列元素那樣呼叫字串中的某幾個字元的Matlab實現特定位置的字串的擷取save_path="H:\Experiment\Img\";smap_list="P1_front_img.jpg";cell_str=strsplit(smap_list,"_"); %分成三段: "P1" "front" "img.jpg"smap_name=cell_str{1,1};save_full_path=strcat(save_path,smap_name,".jpg"); %H:\Experiment\Img\P1.jpg擴充套件資料:關於matlab字串操作方法(擷取)在這裡藉助正則表示式函式regexp的split模式。一般語法:S=regexp(str,char,"split")其中str是待分割的字串,char是作為分隔符的字元(可以使用正則表示式)。分割出的結果存在S中。以下面這樣一串字元為例:HelloNocturneStudio首先去除首尾的多餘空格:str=deblank(str)例1:設這幾個字串是以製表符分隔的,可以這樣來做:S=regexp(str,"\t","split")例2:設這些字串是以一個或多個空格分隔的,可以用正則表示式來描述:S=regexp(str,"\s+","split")這樣,S(1)=’Hello’,S(2)=’Nocturne’,S(3)=’Studio’。注意,上面得到的結果S是一個cell型變數,它的每個元素比如S(1)仍然是cell型的,只能用來display,不能直接用來進行字串操作(比如獲取其中的某個字元),所以我們在使用需要執行一次:s1=char(S(1))這樣的s1才是一個真正的字串,可以進行後續的操作。
a="abcdefghijklmnopqrstuvwxyz"%matlab中是一字元陣列的形式儲存字串的b=a(5:8)%可以像呼叫陣列元素那樣呼叫字串中的某幾個字元的Matlab實現特定位置的字串的擷取save_path="H:\Experiment\Img\";smap_list="P1_front_img.jpg";cell_str=strsplit(smap_list,"_"); %分成三段: "P1" "front" "img.jpg"smap_name=cell_str{1,1};save_full_path=strcat(save_path,smap_name,".jpg"); %H:\Experiment\Img\P1.jpg擴充套件資料:關於matlab字串操作方法(擷取)在這裡藉助正則表示式函式regexp的split模式。一般語法:S=regexp(str,char,"split")其中str是待分割的字串,char是作為分隔符的字元(可以使用正則表示式)。分割出的結果存在S中。以下面這樣一串字元為例:HelloNocturneStudio首先去除首尾的多餘空格:str=deblank(str)例1:設這幾個字串是以製表符分隔的,可以這樣來做:S=regexp(str,"\t","split")例2:設這些字串是以一個或多個空格分隔的,可以用正則表示式來描述:S=regexp(str,"\s+","split")這樣,S(1)=’Hello’,S(2)=’Nocturne’,S(3)=’Studio’。注意,上面得到的結果S是一個cell型變數,它的每個元素比如S(1)仍然是cell型的,只能用來display,不能直接用來進行字串操作(比如獲取其中的某個字元),所以我們在使用需要執行一次:s1=char(S(1))這樣的s1才是一個真正的字串,可以進行後續的操作。