ポク太郎です。
とりあえず始めたUWSC奮闘記。新環境で始めるので、最初は準備。
UWSCのリファレンスで文字列操作の関数を見てみると、
R=COPY(文字列,n1,n2)
とすると、Rには文字列のn1番目からn2個取り出したものが代入される、らしい。
また、
R=LENGTH(文字列)
とすると、Rには渡された文字列の文字数が代入される、らしい。
うーん。文字列操作はやはりBASIC言語の仕様が一番分かりやすいと思うので、自作関数でそっちに翻訳→下の関数群を作ります。関数の文字数を少なくしただけのものもありますが。
mid関数
FUNCTION mid(txt,n1,n2)
RESULT=COPY(txt,n1,n2)
FEND
1,3行目 | 1 3 |
FUNCTION mid(txt,n1,n2) FEND |
関数の定義:文字列のn1番目からn2個取り出す-COPYと同じ関数(標準関数を翻訳しただけ) | ||
2行目 | 2 | RESULT=COPY(txt,n1,n2) |
RESULTにはtxtのn1番目からn2個が代入され、関数の戻り値として返す。 ※COPY(文字列,n1,n2)は渡された文字列のn1番目からn2番目を返す関数。 ※UWSCでは、固定変数RESULTに代入されたものが関数の戻り値になる。 |
呼び出し側で、
S=mid("Pokutarou",3,4)
とすると、変数Sには”kuta“(3文字目から4つ)が代入される。
left関数
FUNCTION left(txt,n)
RESULT=COPY(txt,1,n)
FEND
1,3行目 | 1 3 |
FUNCTION left(txt,n) FEND |
関数の定義:左からn文字分を取り出す。 | ||
2行目 | 2 | RESULT=COPY(txt,1,n) |
RESULTにはtxtの1番目からn個(つまり左からn個)が代入され、関数の戻り値として返す。 |
呼び出し側で、
S=left("Pokutarou",4)
とすると、変数Sには”Poku“(左から4つ)が代入される。
right関数
FUNCTION right(txt,n)
RESULT=COPY(txt,LENGTH(txt)-n+1,n)
FEND
1,3行目 | 1 3 |
FUNCTION right(txt,n) FEND |
関数の定義:右からn文字分を取り出す。 | ||
2行目 | 2 | RESULT=COPY(txt,LENGTH(txt)–n+1,n) |
RESULTにはtxtの(LENGTH(txt)-n+1)番目からn個(つまり右からn個)が代入され、関数の戻り値として返す。 ※LENGTH(文字列)は渡された文字列の文字数を返す関数。 |
呼び出し側で、
S=right("Pokutarou",5)
とすると、変数Sには”tarou“(右から5つ)が代入される。
len関数
FUNCTION len(txt)
RESULT=LENGTH(txt)
FEND
1,3行目 | 1 3 |
FUNCTION len(txt) FEND |
関数の定義:文字数nを返す。 | ||
2行目 | 2 | RESULT=LENGTH(txt) |
RESULTにはtxtの文字数が代入され、関数の戻り値として返す。 ※LENGTH(文字列)は渡された文字列の文字数を返す関数。 |
呼び出し側で、
Intg=len("Pokutarou")
とすると、変数Intgには9(文字数)が代入される。
文字列操作あれこれMID、LEFT、RIGHT、LEN | 文字列中に指定ワードあるなし判定関数 | 現在のタイムスタンプ文字列を返す関数 | カンマ等で区切られたフィールドデータを扱う関数 |
本記事の内容は以下でした。
○文字列操作の関数群
○文字列操作の関数群
コメント