Correct use of regexp

2 次查看(过去 30 天)
GEORGIOS BEKAS
GEORGIOS BEKAS 2018-2-13
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'

回答(2 个)

ES
ES 2018-2-13
y=regexprep(x,'[0+]','00')
  1 个评论
GEORGIOS BEKAS
GEORGIOS BEKAS 2018-2-13
it does not work if the string would be: x='00011000'

请先登录,再进行评论。


Steven Lord
Steven Lord 2018-2-13
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.

类别

Help CenterFile Exchange 中查找有关 String 的更多信息

标签

产品

Community Treasure Hunt

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

Start Hunting!

Translated by