I use database records for file names when generating reports, but some of those have invalid characters. The attachment_fu plugin has the sanitize_filename method, but I wasn't so happy with the output, e.g.,
>> sanitize_filename("foo & bar")
=> "foo___bar"
>> sanitize_filename("14th @bar")
=> "14th__bar"
So I wrote a prettier sanitization helper:
which gives me:
>> sanitize_for_filename(" foo & bar ")
=> "foo_and_bar"
>> sanitize_for_filename("14th @bar")
=> "14th_at_bar"
Much better.