What is the difference between tr and gsub?

Use tr when you want to replace (translate) single characters.

tr matches on single characters (not via a regular expression), therefore the characters don’t need to occur in the same order in the first string argument. When a character is found, it is replaced with the character that is found at the same index in the second string argument:

'abcde'.tr('bda', '123')
#=> "31c2e"

'abcde'.tr('bcd', '123')
#=> "a123e"

Use gsub when you need to use a regular expression or when you want to replace longer substrings:

'abcde'.gsub(/bda/, '123')
#=> "abcde"

'abcde'.gsub(/b.d/, '123')
#=> "a123e"

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)