字符串:使用*符号屏蔽最后n个字符

时间:2014-04-18 04:19:43

标签: ruby-on-rails ruby string ruby-on-rails-4

我有一个以下字符串:

99001155

我想用*符号掩盖最后4个字符。例如:

  

99001155 - > 9900 ****

怎么做?

4 个答案:

答案 0 :(得分:7)

str = "99001155"
str[-4..-1] = "****"
str
# => 9900****

答案 1 :(得分:3)

"99001155"[0...-4] + "****"

#=> "9900****" 

答案 2 :(得分:1)

我会使用常规表达式,如下所示: '99001155'.gsub(/.{4}\z/, '****')

这样做的优势在于可以一目了然地发现正在发生的事情,并且很容易被操作以仅匹配最后四位数字(例如)。

答案 3 :(得分:0)

'99001155'.gsub(/\d{4}$/, '*' * 4)