--- tr_s(search, replace)
--- tr_s!(search, replace)

    ʸ search ʸ˴ޤޤʸ¸ߤ顢
    replace ʸбʸ֤ޤˡ
    ִʬƱʸ¤Ӥä餽 1 ʸ˰̤ޤ

    search η tr(1) [manual page] ƱǤĤޤꡢ
    `a-c'  a  c ̣"^0-9" Τ褦
    ʸƬ `^' ξϻʸʳִоݤˤʤޤ

    replace ФƤ `-' ˤϰϻ꤬ǽǤ

        p "foo".tr_s('a-z', 'A-Z')
        => "FO"

    `-' ʸξüˤʤˤϰϻΰ̣ˤʤޤ
    Ʊͤˡ`^' ⤽θ̤ʸƬˤȤǤޤ
    `-', `^', `\' ϥХåå(`\')ˤ
    ꥨפ뤳ȤǤޤ

    replace ϰϤ search ϰϤ⾮硢
    replace κǸʸ̵¤³ΤȤưޤ

    tr_s ִʸ֤ޤ
    tr_s!  self ѹ֤ޤִ
    ʤä nil ֤ޤ

    ((**)): Υ᥽åɤ tr(search, replace).squeeze(replace)
    ȤǤϵưۤʤޤtr  squeeze Ȥߤ碌ִʸΤ
    squeeze оݤˤΤФơtr_s ((*ִ줿ʬ*))
    squeeze оݤȤޤ

              p "foo".tr_s("o", "f")              # => "ff"
              p "foo".tr("o", "f").squeeze("f")   # => "f"

