Replace a specific portion of a string

4 次查看(过去 30 天)
I have a cell array of strings,
'SPY US 09/17/11 P118 Equity'
'XOM US 08/20/11 P72.5 Equity'
'AAPL US 12/17/11 P375 Equity'
....
I would like to keep the left side and the right side but replace the dates all into say 01/01/11. So the output could be:
'SPY US 01/01/11 P118 Equity'
'XOM US 01/01/11 P72.5 Equity'
'AAPL US 01/01/11 P375 Equity'
....
Anyone know a quick way? Thanks in advance!

采纳的回答

Oleg Komarov
Oleg Komarov 2011-8-24
cs = {'SPY US 09/17/11 P118 Equity'
'XOM US 08/20/11 P72.5 Equity'
'AAPL US 12/17/11 P375 Equity'};
regexprep(cs, '\d{2}/\d{2}/\d{2}','01/01/11')

更多回答(1 个)

Zoe Zhang
Zoe Zhang 2011-8-24
>> ticker = 'SPY US 09/17/11 P118 Equity'; >> position = findstr('/',ticker)
position =
10 13
>> ticker(position(1)-2:position(2)+2) = '01/01/11'
ticker =
SPY US 01/01/11 P118 Equity
There should be a easier way right? Some thing like modifiedStr = strrep('SPY US 09/17/11 P118 Equity', '$$/$$/$$','01/01/01')

类别

Help CenterFile Exchange 中查找有关 Sparse Matrices 的更多信息

产品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by