当某些字符是重复的时,如何删除regex中重复的字符?
例如,我有";BBAALLLLOOONN";我希望输出只是气球。
我尝试过这个正则表达式:/(.((?=\1(/g,但结果是";BALON";而不是";BALLOON";。
使用
regexprep(line, '([A-Za-z])1', '$1')
查看验证
()
是用1
引用的捕获组,1
消耗重复的字符,并且每次匹配只返回捕获的字母,因为替换模式是$1
反向引用。
不要使用前瞻性。将(.(\ 1替换为\ 1。
在ruby中,这将是"BBAALLLLOOOONN".gsub(/(.)1/, '1')