class Amakanize::Filters::TrailingVolumeNumberDeletionFilter

Public Instance Methods

call(context:, output:) click to toggle source

@note Override @param output [String] e.g. `“やはり俺の青春ラブコメはまちがっている。4”`, `“ネトゲの嫁は女の子じゃないと思った? Lv.2”` @return [Hash] e.g. `“やはり俺の青春ラブコメはまちがっている。”`, `“ネトゲの嫁は女の子じゃないと思った?”`

# File lib/amakanize/filters/trailing_volume_number_deletion_filter.rb, line 9
def call(context:, output:)
  if !context[:volume_number_removed] && !output.match(/[^\s]Lv\.?\s*#{Amakanize::PATTERN_OF_NUMERIC_CHARACTERS}\z/i)
    output = output.sub(/,?\s*#{PATTERN_OF_VOLUME_PREFIX}?#{Amakanize::PATTERN_OF_NUMERIC_CHARACTERS}(?:話|巻|版)?(?:\s*\(.*?\))?\z/, "")
  end
  {
    context: context,
    output: output,
  }
end