find/remove 2 consecutive letters from string

4 visualizzazioni (ultimi 30 giorni)
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!

Risposta accettata

Andrei Bobrov
Andrei Bobrov il 3 Gen 2012
regexprep('.XNY.N','[.]N','')
  2 Commenti
Zoe Zhang
Zoe Zhang il 3 Gen 2012
I see, so [] means the consecutive letter. Thank you!
Walter Roberson
Walter Roberson il 3 Gen 2012
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.

Accedi per commentare.

Più risposte (1)

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

Categorie

Scopri di più su Get Started with MATLAB in Help Center e File Exchange

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by