2014-03-24 58 views
1

我在Matlab中有一個字符串S。我怎樣才能用S + P替換S中的一個子字符串。我只知道S中子字符串的第一個和最後一個索引。什麼是方法?替換位於兩個位置之間的子字符串

+0

@thewaywewalk,但它會替換初始字符串中所有出現的字符串「oldSubstr」。而且我只想替換一個位於「第一」和「最後」之間的事件。編輯:我求求你赦免你的評論 - 只是混合按鈕。 – Macaronnos

+0

我自己刪除了它,因爲我誤解了你的問題。因爲我知道你是對的,你沒有你想要替代的模式,你只知道索引? – thewaywewalk

回答

1

那怎麼樣?

str = 'My dog is called Jim';  %// original string 

a = 4;        %// starting index 
b = 6;        %// last index 

replace = 'hamster';    %// new pattern 

newstr = [str(1:a-1) replace str(b+1:end)] 

回報:

newstr = My hamster is called Jim 

如果你想替換圖案具有相同的字符數作爲新的一個,你可以使用簡單的索引:

str(a:b) = 'cat' 

退貨:

str = My cat is called Jim 
相關問題