gpt4 book ai didi

ruby - 用哈希中的值替换哈希中的键

转载 作者:太空宇宙 更新时间:2023-11-03 17:16:59 25 4
gpt4 key购买 nike

我有一个散列(有数百对)和一个字符串。

我想将此字符串中出现的所有键从散列替换为相应的散列值。

我知道我可以做这样的事情

some_hash.each { |key, value| str = str.gsub(key, value) }

但是,我想知道是否有更好的(性能方面的)方法来做到这一点。

最佳答案

你只需要运行一次gsub。由于正则表达式 (oniguruma) 是在 C 中实现的,因此它应该比在 Ruby 中循环更快。

some_hash = {
"a" => "A",
"b" => "B",
"c" => "C",
}

"abcdefgabcdefg".gsub(Regexp.union(some_hash.keys), some_hash)
# => "ABCdefgABCdefg"

关于ruby - 用哈希中的值替换哈希中的键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14221840/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com