新增:readme href匹配

This commit is contained in:
yystopf 2024-03-13 15:10:05 +08:00
parent f3f63e3dd3
commit 370a565a7c
1 changed files with 15 additions and 1 deletions

View File

@ -122,20 +122,26 @@ module RepositoriesHelper
s_regex_1 = /\[.*?\]\((.*?)\)/ s_regex_1 = /\[.*?\]\((.*?)\)/
src_regex = /src=\"(.*?)\"/ src_regex = /src=\"(.*?)\"/
src_regex_1 = /src=\'(.*?)\'/ src_regex_1 = /src=\'(.*?)\'/
href_regex = /href=\"(.*?)\"/
href_regex_1 = /href=\'(.*?)\'/
ss_c = content.to_s.scan(s_regex_c) ss_c = content.to_s.scan(s_regex_c)
ss = content.to_s.scan(s_regex) ss = content.to_s.scan(s_regex)
ss_1 = content.to_s.scan(s_regex_1) ss_1 = content.to_s.scan(s_regex_1)
ss_src = content.to_s.scan(src_regex) ss_src = content.to_s.scan(src_regex)
ss_src_1 = content.to_s.scan(src_regex_1) ss_src_1 = content.to_s.scan(src_regex_1)
total_sources = {ss_c: ss_c,ss: ss, ss_1: ss_1, ss_src: ss_src, ss_src_1: ss_src_1} 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_src: ss_src, ss_src_1: ss_src_1, ss_href: ss_href, ss_href_1: ss_href_1}
# total_sources.uniq! # total_sources.uniq!
total_sources.except(:ss, :ss_c).each do |k, sources| total_sources.except(:ss, :ss_c).each do |k, sources|
sources.each do |s| sources.each do |s|
begin begin
s_content = s[0] 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? 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] ext = File.extname(s_content)[1..-1]
puts ext
if (image_type?(ext) || download_type(ext)) && !ext.blank? if (image_type?(ext) || download_type(ext)) && !ext.blank?
s_content = File.expand_path(s_content, file_path) s_content = File.expand_path(s_content, file_path)
s_content = s_content.split("#{Rails.root}/")[1] s_content = s_content.split("#{Rails.root}/")[1]
@ -146,6 +152,10 @@ module RepositoriesHelper
content = content.gsub("src=\"#{s[0]}\"", "src=\"#{s_content}\"") content = content.gsub("src=\"#{s[0]}\"", "src=\"#{s_content}\"")
when 'ss_src_1' when 'ss_src_1'
content = content.gsub("src=\'#{s[0]}\'", "src=\'#{s_content}\'") content = content.gsub("src=\'#{s[0]}\'", "src=\'#{s_content}\'")
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 else
content = content.gsub("(#{s[0]})", "(#{s_content})") content = content.gsub("(#{s[0]})", "(#{s_content})")
end end
@ -158,6 +168,10 @@ module RepositoriesHelper
content = content.gsub("src=\"#{s[0]}\"", "src=\"/#{s_content}\"") content = content.gsub("src=\"#{s[0]}\"", "src=\"/#{s_content}\"")
when 'ss_src_1' when 'ss_src_1'
content = content.gsub("src=\'#{s[0]}\'", "src=\'/#{s_content}\'") content = content.gsub("src=\'#{s[0]}\'", "src=\'/#{s_content}\'")
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 else
content = content.gsub("(#{s[0]})", "(/#{s_content})") content = content.gsub("(#{s[0]})", "(/#{s_content})")
end end