Method: Metanorma::Standoc::Utils#quoted_csv_split

Defined in:
lib/metanorma/standoc/utils.rb

#quoted_csv_split(text, delim = ",", eql = "=") ⇒ Object



43
44
45
46
47
48
49
50
51
52
53
# File 'lib/metanorma/standoc/utils.rb', line 43

def quoted_csv_split(text, delim = ",", eql = "=")
  # quoted strings: key="va,lue",
  c = HTMLEntities.new
  text = c.decode(text).gsub(/([a-zA-Z_]+)#{eql}(["'])(.+?)\2/,
                             %("\\1#{eql}\\3"))
  Metanorma::Utils::csv_split(text, delim)
    .map do |x|
      c.encode(x.sub(/^(["'])(.+)\1$/, "\\2"),
               :basic, :hexadecimal)
    end
end