find/remove 2 consecutive letters from string

Tried the regexp(regexprep) family, still don't know how to get this to work...
I have a cell array of strings, some of which looks like: '.XNY.N'
I simply need to check the cell array, if there is a .N or .M, remove it. Same as in excel you select an array and replace .N and .M with empty.
So in this case '.XNY.N' will be '.XNY'
Anyone knows how to do that? Thanks in advance!

 Akzeptierte Antwort

Andrei Bobrov
Andrei Bobrov am 3 Jan. 2012

1 Stimme

regexprep('.XNY.N','[.]N','')

2 Kommentare

Zoe Zhang
Zoe Zhang am 3 Jan. 2012
I see, so [] means the consecutive letter. Thank you!
Andrei's answer involved [.] with a period between the brackets. That is one of the ways in which you can code a literal period. Normally in regular expressions, a period is interpreted to mean "any character". You can also use \. to indicate a literal period.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Walter Roberson
Walter Roberson am 3 Jan. 2012

2 Stimmen

Slightly closer to your original question, and using a different regexp pattern:
regexprep('.XNY.N','\.[MN]','')

Kategorien

Mehr zu Characters and Strings finden Sie in Hilfe-Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by