替换n个字母的第一次出现

Mat*_*ahé 0 ruby regex string replace

我想修改ruby字符串中第一次出现的字母.

例如 :

> "abcabcabcabc".some_magic_method("a", "0", 3)
=> "0bc0bc0bcabc"
Run Code Online (Sandbox Code Playgroud)

我很确定我错过了一些东西,但我找不到一个简单的方法!也许正在使用正则表达式?

Cas*_*yte 8

您可以使用基本的拆分/连接方法:

"abcabcabcabc".split('a', 4).join('0')
Run Code Online (Sandbox Code Playgroud)

请注意,拆分限制必须为:替换次数+ 1