Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.Opens in a new tab

For information on migrating to InterSystems IRISOpens in a new tab, see Why Migrate to InterSystems IRIS?

Right

文字列の右端から、指定した数の文字を取り出すか、置換します。

Synopsis

Right(string,length)

Right(string,length)=value

引数

string 右端の文字を返す文字列式。
length 返すか、または置換する string の最後からの文字数を示す整数に評価される数値式。小数点以下を持つ数値は整数に切り捨てられます。lengthstring の文字数以上のときは、文字列全体が返されます (または置換されます)。埋め込みは実行されません。length=0 の場合については、以下を参照してください。
value 文字列として評価される式。置換、または追加に使用される値を指定します。length が 0 の場合は、string の最後に value が追加されます。length が 0 より大きい場合は、string の最後の指定された数の文字が value によって置換されます。

概要

Right 関数には以下の 3 つの使用方法があります。

  • string の最後 (右端) の部分文字列を返します。これには構文 Right(string,length) が使用されます。

  • string の最後 (右端) の部分文字列を置換します。置換部分文字列は、元の部分文字列と同じ長さでも、長くても、短くてもかまいません。これには構文 Right(string,length)=valuevalue>0 で使用されます。

  • string の最後 (右端) の部分文字列を追加します。これには構文 Right(string,length)=valuevalue=0 で使用されます。

Right(string,length) は、string の右端の文字または文字列を返します。部分文字列は、文字列の最後 (右端) から逆方向に length で指定された文字数をカウントすることにより決定されます。length が 0 または負の数の場合、Right は空の文字列 ("") を返します。string 長より長い length を指定した場合、文字列全体が返されます。

Right(string,length)=value は、string の右端の文字または文字列を value に置換します。引数 length は、文字列の最後 (右端) から逆方向に length で指定された文字数をカウントすることによって、置換する string の文字数を指定します。length が負の数の場合、string は変更されません。これは、string が空の文字列 ("") の場合も同じです。lengthstring の長さより長い場合、stringvalue によって置換されます。length=0 の場合は、string の最後 (右端) に value が追加されます。

string の文字数を指定するには、Len 関数を使用します。

Left 関数は、文字列の最初 (左端) から指定された文字数を返します。Mid 関数は文字列内の指定した開始地点からの指定数の文字を返します。

以下の例では、Right 関数を使用して、mystr の最後の 7 文字、最後の 99 文字 (この例ではすべての文字)、および最後の 0 文字を返します。

Dim mystr
mystr = "InterSystems"
Println "length 7:",Right(mystr,7)   ' Returns "Systems"
Println "length 99:",Right(mystr,99) ' Returns "InterSystems"
Println "length 0:",Right(mystr,0)   ' Returns ""

以下の例では、Right 関数を使用して mystr の最後の 3 文字を 7 文字の文字列に置換します。

Dim mystr
mystr = "Interest"
PrintLn mystr
Right(mystr,3)="Systems"
PrintLn mystr

以下の例では、mystr の最後の 3 文字を削除します (NULL 文字列に置換します)。

Dim mystr
mystr = "Interest"
PrintLn mystr
Right(mystr,3)=""
PrintLn mystr

以下の例では、length が mystr の長さより長いため、mystr のすべての文字が置き換えられます。

Dim mystr
mystr = "Oracle"
PrintLn mystr
Right(mystr,99)="InterSystems"
PrintLn mystr

以下の例では、mystr に文字列が追加されます。文字列を追加するには、length をゼロ (0) にする必要があります。

Dim mystr
mystr = "Inter"
PrintLn mystr
Right(mystr,0)="Systems"
PrintLn mystr

以下の例は、length が 0 未満の場合は、mystr に何も影響を与えないことを示しています。

Dim mystr
Dim empstr
mystr = "InterSystems"
empstr = ""
PrintLn mystr
Right(mystr,-1)="Bongo"
PrintLn "string out:",mystr
Right(empstr,-1)="BongoSystems"
PrintLn "string out:",empstr

関連項目

FeedbackOpens in a new tab