strreplace

【Tera Term マクロ言語】コマンドリファレンス

strreplace 機能

[文字列操作コマンド]

文字列を置換します。

コマンドライン

strreplace <strvar> <index> <regex> <newstr>

機能説明

文字列変数 <strvar> の <index> 位置(1オリジン)から、正規表現 <regex> を検索し、文字列 <newstr> に置き換えます

置換が成功すると、システム変数 <result> に "1" が格納され、正規表現 <regex> でマッチした文字列はシステム変数 <matchstr> に格納されます。

このマクロコマンドを実行すると システム変数 groupmatchstr1 ~ groupmatchstr9 の内容がクリアされます。
<strvar>
置換したい文字列を指定します。
<index>
文字列のうち、置換対象とする位置を指定します。
指定方法としては、1 文字目を 1 とします。
<regex>
検索したい正規表現を指定します。

<regex> が <strvar> の内容にマッチせず置換が行われなかった場合は、result に "0" が格納されます。
<regex> の書式が正しくない等でエラーとなった場合は、<result> に "-1" が格納されます。
<newstr>
<newstr> が "" (空文字列) の場合は空文字へ置換されるため、結果的に <strvar> 中の <regex> は削除されます。


日本語等のマルチバイト文字列を検索する場合、事前に regexoption で適切なエンコーディングを設定しておく必要があります。

パラメータの説明

指定するパラメータは以下の通りです。
パラメータパラメータ説明
<strvar>文字列置換したい文字列を指定します。
<index>整数置換対象とする位置を 1 文字目を 1 としてを指定します。
<regex>文字列検索する正規表現を指定します。
<newstr>文字列パターンマッチした部分へ置換する文字列を指定します。

続きを読む

strremove

【Tera Term マクロ言語】コマンドリファレンス

strremove 機能

[文字列操作コマンド]

文字列を削除します。

コマンドライン

strremove <strvar> <index> <len>

機能説明

文字列変数 <strvar> の <index> 位置(1オリジン)から <len> 文字分を削除し詰めます。

パラメータの説明

指定するパラメータは以下の通りです。
パラメータパラメータ説明
<strvar>文字列文字列を指定します。
<index>整数1 文字目を 1 として、削除を開始したい文字位置を指定します。
<len>整数開始位置から削除する文字数を指定します。

続きを読む

strmatch

【Tera Term マクロ言語】コマンドリファレンス

strmatch 機能

[文字列操作コマンド]

正規表現によるパターンマッチングを行います。

コマンドライン

strmatch <target string> <string with regular expression>

機能説明

Oniguruma の正規表現 が使用できます。
<target string> 引数に指定された文字列を、正規表現 <string with regular expression> によるパターンに合致するかどうかを調べ、実行結果をシステム変数 result , matchstr , groupmatchstr に格納します。

変数 matchstr には最初にマッチしたパターンが格納されます。
変数 groupmatchstr1~groupmatchstr9 にはグループマッチしたパターンが格納されます。
なお、マッチしなかった場合には、これらの変数は strmatch 実行前の内容が保持されます。

日本語等のマルチバイト文字列を検索する場合、事前に regexoption で適切なエンコーディングを設定しておく必要があります。

パラメータの説明

指定するパラメータは以下の通りです。
パラメータパラメータ説明
<target string>文字列文字列を指定します。
<string with regular expression>文字列<target string> の中にマッチするかどうか確認したいパターンを指定します。

続きを読む

strlen

【Tera Term マクロ言語】コマンドリファレンス

コマンド名 機能

[文字列操作コマンド]

文字列の長さを返します。

コマンドライン

strlen <string>

機能説明

文字列 <string> の長さをシステム変数 <result> に格納します。
長さはバイト単位でカウントされます。

パラメータの説明

指定するパラメータは以下の通りです。
パラメータパラメータ説明
<string>文字列文字数をカウントしたい文字列を指定します。

続きを読む

strjoin

【Tera Term マクロ言語】コマンドリファレンス

strjoin 機能

[文字列操作コマンド]

文字を連結します。

コマンドライン

strjoin <strvar> <separator> [<count>]

機能説明

別途指定した groupmatchstr1 ~ groupmatchstr9 を区切り記号 <separator> で連結し、文字列変数 <strvar> に格納します。
<strvar>
連結した文字列を格納する変数(任意の文字列)を指定します。
<separator>
<separator> には区切り記号として扱う文字列を指定します。

カンマを指定した場合には CSV*1 となり、タブを指定した場合には TSV*2 になります。
[<count>]
<count> には、連結する部分文字列の最大数(9以下)を指定します。
<count> が省略された場合は 9 とみなされます。
別途設定する変数
別途、連結するために定義する変数は以下の通りです。
変数パラメータ説明
groupmatchstr1文字列連結する文字列の1つ目
groupmatchstr2文字列連結する文字列の2つ目
groupmatchstr3文字列連結する文字列の3つ目
groupmatchstr4文字列連結する文字列の4つ目
groupmatchstr5文字列連結する文字列の5つ目
groupmatchstr6文字列連結する文字列の6つ目
groupmatchstr7文字列連結する文字列の7つ目
groupmatchstr8文字列連結する文字列の8つ目
groupmatchstr9文字列連結する文字列の9つ目

パラメータの説明

指定するパラメータは以下の通りです。
パラメータパラメータ説明
<strvar>文字列連結した文字列を格納する変数を指定します。
<separator>文字列連結に用いるセパレータを指定します。
<count>整数groupmatchstr1 ~ いくつまで連結するか、数値を指定します。

続きを読む