CHANGE
注: 最後に指定された引数の後のコンマは省略可能です。
haystack を検索し、1 つ以上の old のオカレンスを new に変更します。
- Returns
- サブストリング old をサブストリング new に、count で指定した回数だけ変更した haystack を戻します。
- haystack
- 検索するストリング。
- old
- 変更する旧ストリング。この引数が省略されると、新規ストリングは start の位置に挿入されます。
- new
- 新規ストリング。この引数が省略されると、old の count 個のオカレンスが削除されます。
- count
- 変更する old のオカレンスの 最大数。負でない整数でなければなりません。デフォルト値は 1 です。値が 0 の場合、 old ストリングのフィールドが省略されない限り (この場合は、値が 1 であることと同等です)、すべてのオカレンスが変更されます。
- start
- old のオカレンスの検索を開始する haystack 内の位置 (バイト単位)。正の整数である必要があります。デフォルト値は 1 です。start が出力レコードの現在の長さより大きければ、この関数は無効になります。
- length
- old のオカレンスを検索する haystack 内のバイト数。負でない整数でなければなりません。値が 0 の場合、start から haystack の残りの部分が検索されることを示します。length が old より小さければ、この関数は無効になります。
例 1
CHANGE('abcabcabc','abc','DeF') ► 'DeFabcabc'
/* 1 (default) occurrence of old changed */
例 2
CH('abcabcabc','abc','DeF',2) ► 'DeFDeFabc'
/* 2 occurrences of old changed */
例 3
CHANGE('abcabcabc','abc','DeF',0) ► 'DeFDeFDeF'
/* count = 0, all occurrences of old changed */
例 4
CH('abcabcabc','abc','DeF',,4) ► 'abcDeFabc'
/* 1 (default) occurrences of old changed, */
/* starting at position 4 */
例 5
CHANGE('aaaaaaaa','a','A',0,3,2) ► 'aaAAaaaa'
/* all occurrences of old changed, starting at */
/* position 3 for a length of 2 */
例 6
CH('abcabcabc','a',,0) ► 'bcbcbc'
/* new omitted, count = 0, */
/* all occurrences of old deleted */
例 7
CHANGE('abc',,'def',,2) ► 'adefbc'
/* old omitted, new inserted, starting at */
/* position 2 */