Published on InterSystems Developer Community (https://community.intersystems.com)

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

記事
Mihoko Iijima · 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以前はこちらのドキュメントをご参照ください。

 

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

  • 文字列の中から数値だけを抜き出す方法はありますか?
#ObjectScript #ヒントとコツ #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health

ソースURL:https://jp.community.intersystems.com/post/%E6%96%87%E5%AD%97%E5%88%97%E3%81%AE%E5%89%8D%E5%BE%8C%E3%81%AE%E5%8D%8A%E8%A7%92%E3%82%B9%E3%83%9A%E3%83%BC%E3%82%B9%E5%8F%8A%E3%81%B3%E5%85%A8%E8%A7%92%E3%82%B9%E3%83%9A%E3%83%BC%E3%82%B9%E3%82%92%E5%8F%96%E3%82%8A%E9%99%A4%E3%81%8F%E6%96%B9%E6%B3%95