Filter löschen
Filter löschen

Correct use of regexp

1 Ansicht (letzte 30 Tage)
GEORGIOS BEKAS
GEORGIOS BEKAS am 13 Feb. 2018
Kommentiert: GEORGIOS BEKAS am 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'

Antworten (2)

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

Melden Sie sich an, um zu kommentieren.


Steven Lord
Steven Lord am 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.

Kategorien

Mehr zu Characters and Strings finden Sie in Help 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