【PostgreSQL】文字を置換する、複数置換する(replace、translate)
文字を置換する、複数置換する方法
文字を一つ置換するにはreplaceを、複数一度に置換するにはtranslateを使用します。
文字を一つ置換する(replace関数)の構文
文字を置換する(replace関数)の構文を紹介します。
--文字数を置換する構文
replace( 文字列,検索文字列,置換文字列 )
文字を一つ置換する(replace関数)の使用例
replace関数の使用例です。
--"everywhere"から"e"を"E"に置換する
select replace('everywhere','e','E'); --'EvErywhErE'
--"ABCDE"から"ABC"を"abc"に置換する
select replace('ABCDE','ABC','abc'); --'abcDE'
--検索文字列がない場合、エラーにはならずそのままの文字が返る
select replace('ABCDE','XYZ','abc'); --'ABCDE'
文字を複数置換する(translate関数)の構文
文字を複数置換する(translate関数)構文を紹介します。
--文字数を置換する構文
translate( 文字列,検索文字列,置換文字列 )
--検索文字列は、1文字ずつ順番に置換文字列に置換します
--次の文は、aをAに、dをDに、gをGに置換することを示しています。
translate( 文字列,'adg','ADG' ) ;
文字を複数置換する(translate関数)の使用例
translate関数の使用例です。
--"everywhere"から"e"を"E"に、"r"を"R"に置換する
select translate('everywhere','er','ER'); --'EvERywhERE'
--"ABCDEFGHI"から"a"を"A"に、"d"を"D"に、"g"を"G"に置換する
select translate('abcdefghi','adg','ADG'); --'AbcDefGhi'
--検索文字列がない場合、エラーにはならずそのままの文字が返る
select translate('ABCDE','XYZ','abc'); --'ABCDE'