如何在满足条件的情况下将每个字符替换到某个点?
string = "401200******7777"
string.gsub!(/^\d+/) { |m| "*" * m.length }
puts string
# ************7777
有没有更简单/更好的方法来做到这一点?
最佳答案
现在不能尝试,但这应该可以解决问题:
string.gsub!(/(\d)(?=.*\*)/, '*')
关于用 "*"替换每个字符\d 的 Ruby 单行正则表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4600758/