def normalized_author(author)

      return "" if author.nil? || author.empty?

      author = author.downcase
      # Just take everything before the comma/semicolon if we have one --
      # or before an "and", for stripping individuals out of 245c
      # multiples. 
      if author =~ /\A([^,;]*)(,|\sand\s|;)/
        author = $1
      end


      author.gsub!(/\A.*by\s*/, '')

      # We want to remove some punctuation that is better
      # turned into a space in the query. Along with
      # any kind of unicode space, why not. 
      author.gsub!(PUNCT_STRIP_REGEX, ' ')

      # compress any remaining whitespace
      author.strip!
      author.gsub!(/\s+/, ' ')

      return author
    end
def normalized_author(author)

      return "" if author.nil? || author.empty?

      author = author.downcase
      # Just take everything before the comma/semicolon if we have one --
      # or before an "and", for stripping individuals out of 245c
      # multiples. 
      if author =~ /\A([^,;]*)(,|\sand\s|;)/
        author = $1
      end


      author.gsub!(/\A.*by\s*/, '')

      # We want to remove some punctuation that is better
      # turned into a space in the query. Along with
      # any kind of unicode space, why not. 
      author.gsub!(PUNCT_STRIP_REGEX, ' ')

      # compress any remaining whitespace
      author.strip!
      author.gsub!(/\s+/, ' ')

      return author
    end
Lowercase, and try to get just the last name out of something
 that looks like a cataloging authorized heading.

 Try to remove leading 'by' stuff when we're getting a 245c