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

24 visualizzazioni (ultimi 30 giorni)
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?

Risposta accettata

Andrei Bobrov
Andrei Bobrov il 2 Dic 2011
s ='012AB AB0 00230 0045 abc';
out = regexprep(s,'\<0*','')
  3 Commenti
Walter Roberson
Walter Roberson il 2 Dic 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.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Characters and Strings in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by