str = <<'EOT' Это с какой-то
разметкой
и непарными тегами и, , . EOT puts str.gsub(/(<(?!\/?a\b)(?!\/?b\b)(?!\/?i\b)(?!\/?u\b)(?!\/?ul\b)(?!\/?li\b)(?!\/?ol\b)(?!\/?img\b)[^>]+\s*\/?>)/m,'') .gsub(/(]+?)(\s*\/?>)/m,'\\1\\3')