how to use regular expression to remove a prefix string with all 0s.

14 Ansichten (letzte 30 Tage)
I have a set of strings, some of them are prefixed with 0, and others are not. For instance, there have five strings:
012AB AB0 00230 0045 abc
I want to remove all of the 0s if they are the prefix of a string. If a string does not have 0s at the prefix position, then the string will be kept the same.
Therefore, the above strings should be transferred into
12AB AB0 230 45 abc
How to implement the above functionality using regular expression?

Akzeptierte Antwort

Andrei Bobrov
Andrei Bobrov am 2 Dez. 2011
s ='012AB AB0 00230 0045 abc';
out = regexprep(s,'\<0*','')
  3 Kommentare
Walter Roberson
Walter Roberson am 2 Dez. 2011
\< means "beginning of a word" http://www.mathworks.com/help/techdoc/matlab_prog/f0-42649.html#f0-42983
0* means zero or more occurrences of the character '0'
Better would be
\<0+
which would require 1 or more 0's -- there is no point going through the replacement part of the code if there was not at least one 0.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

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

Community Treasure Hunt

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

Start Hunting!

Translated by