Azzera filtri
Azzera filtri

Correct use of regexp

2 visualizzazioni (ultimi 30 giorni)
GEORGIOS BEKAS
GEORGIOS BEKAS il 13 Feb 2018
Commentato: GEORGIOS BEKAS il 13 Feb 2018
If x is the following string, I want to add a zero to the end of each sequence of zeros.
x='0110'
y=regexp(x,'[0+]','[0+]$0')
The result should be: x ='001100'

Risposte (2)

ES
ES il 13 Feb 2018
y=regexprep(x,'[0+]','00')
  1 Commento
GEORGIOS BEKAS
GEORGIOS BEKAS il 13 Feb 2018
it does not work if the string would be: x='00011000'

Accedi per commentare.


Steven Lord
Steven Lord il 13 Feb 2018
x = char(randi([0 1], 1, 20)+'0')
y = regexprep(x, '0+', '$00')
J Smith's answer doubles the length of each run of 0's in x. Mine adds one 0 to the end of each run of 0's. In the case where all the runs are of length 1 they are the same. They aren't the same when you have runs of length greater than 1.

Categorie

Scopri di più su Characters and Strings 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