diff --git a/app/helpers/repositories_helper.rb b/app/helpers/repositories_helper.rb index f364c11ff..fe55a4688 100644 --- a/app/helpers/repositories_helper.rb +++ b/app/helpers/repositories_helper.rb @@ -132,6 +132,8 @@ module RepositoriesHelper src_regex_3 = /src= (.*?) / src_regex_4 = /src =(.*?) / src_regex_5 = /src =(.*?) / + href_regex = /href=\"(.*?)\"/ + href_regex_1 = /href=\'(.*?)\'/ ss_c = content.to_s.scan(s_regex_c) ss = content.to_s.scan(s_regex) ss_1 = content.to_s.scan(s_regex_1) @@ -142,12 +144,15 @@ module RepositoriesHelper ss_src_3 = content.to_s.scan(src_regex_3) ss_src_4 = content.to_s.scan(src_regex_4) ss_src_5 = content.to_s.scan(src_regex_5) - total_sources = {ss_c: ss_c,ss: ss, ss_1: ss_1, ss_2: ss_2, ss_src: ss_src, ss_src_1: ss_src_1, ss_src_2: ss_src_2, ss_src_3: ss_src_3, ss_src_4: ss_src_4, ss_src_5: ss_src_5} + ss_href = content.to_s.scan(href_regex) + ss_href_1 = content.to_s.scan(href_regex_1) + total_sources = {ss_c: ss_c,ss: ss, ss_1: ss_1, ss_2: ss_2, ss_src: ss_src, ss_src_1: ss_src_1, ss_src_2: ss_src_2, ss_src_3: ss_src_3, ss_src_4: ss_src_4, ss_src_5: ss_src_5, ss_href: ss_href, ss_href_1: ss_href_1} # total_sources.uniq! total_sources.except(:ss, :ss_c).each do |k, sources| sources.each do |s| begin s_content = s[0] + puts s_content # 链接直接跳过不做替换 next if s_content.starts_with?('http://') || s_content.starts_with?('https://') || s_content.starts_with?('mailto:') || s_content.blank? ext = File.extname(s_content)[1..-1] @@ -173,7 +178,11 @@ module RepositoriesHelper content = content.gsub("src=#{s[0]}", "src=\'#{s_content}\'") when 'ss_2' content = content.gsub(/]:#{s[0]}/, "]: #{s_content.to_s.gsub(" ","").gsub("\r", "")}") - else + when 'ss_href' + content = content.gsub("href=\"#{s[0]}\"", "href=\"#{s_content}\"") + when 'ss_href_1' + content = content.gsub("href=\'#{s[0]}\'", "href=\'#{s_content}\'") + else content = content.gsub("(#{s[0]})", "(#{s_content})") end else @@ -187,7 +196,11 @@ module RepositoriesHelper content = content.gsub("src=\'#{s[0]}\'", "src=\'/#{s_content}\'") when 'ss_2' content = content.gsub(/]:#{s[0]}/, "]: /#{s_content.to_s.gsub(" ","").gsub("\r", "")}") - else + when 'ss_href' + content = content.gsub("href=\"#{s[0]}\"", "href=\"#{s_content}\"") + when 'ss_href_1' + content = content.gsub("href=\'#{s[0]}\'", "href=\'#{s_content}\'") + else content = content.gsub("(#{s[0]})", "(/#{s_content})") end end