記事
· 2021年1月15日 2m read

文字列の前後の半角スペース及び全角スペースを取り除く方法

これは InterSystems FAQ サイトの記事です。

$ZSTRIP() 関数を使用します。

この関数を使用すると、指定文字列から、文字のタイプと文字を削除できます。

下記の例のように、第2引数で、"<"、">"、"<>"を指定することにより、SQLのLTRIM、RTRIM、TRIM関数と同等の処理が可能になります。

// アクションコード "<>" を指定すると前後の空白を削除する
// マスクコード:W で空白 ($C(9), $C(32), $C(160)) を削除する
// 第3引数(全角スペース)は $C($ZHEX("3000")) でも指定可能

USER>Set a=" 全角 ・半角 スペースを含む文字列 "

USER>Set b=$ZSTRIP(a,"<>W"," ")
                                                               
USER>Write "["_b_"]"
[全角 ・半角 スペースを含む文字列]
USER>Set c=$ZSTRIP(a,"*W"," ")      // アクションコード "*" を指定すると全ての空白を削除する

USER>Write "["_c_"]"
[全角・半角スペースを含む文字列]
USER>

※上記実行例コメントの、$ZHEX("3000")は16進数の3000のことで、Unicodeでの全角スペースの文字コードです。

$ZSTRIP()関数の引数詳細については、ドキュメントをご参照ください。

バージョン2018.1以前はこちらのドキュメントをご参照ください。

 

関連情報として以下記事もご参照ください。

ディスカッション (0)1
続けるにはログインするか新規登録を行ってください