问题描述
我正在做一些分析,并为我的代码获得以下结果。
按位置分配的内存
145,470,848 receiver_matches_finder.rb:247
按位置分配的对象
2,863,763 receiver_matches_finder.rb:247
======
代码的要点在于,它采用字符串并将其替换为富正则表达式的文本。我正在遍历一个大循环,每次text
都不同(重复数千个项目)
246 regex_text = ''
247 text.chars.each do |char|
248 regex_text << get_regex_substitution(char)
249 end
250 def self.get_regex_substitution(char)
251 CHAR_TO_SUBSTITUTION_MAPPING[char] || char
252 end
CHAR_TO_SUBSTITUTION_MAPPING = {
'0' => "[0o]",'1' => "[il1]{1,2}",'g' => "[g0oq]",'o' => "[o0]{1,}.freeze
text.chars遍历文本中的每个字符,并使其等效于正则表达式替换。
我不确定是否可以提高此代码的效率?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)