strmatch
2021/05/15 20:07
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> の中にマッチするかどうか確認したいパターンを指定します。 |
対象バージョン
バージョン 4.59 以降で利用可能です。戻り値
戻り値として以下の変数が定義されます。変数名 | 値 | 意味 |
---|---|---|
result | 0 | マッチしなかった |
1以上 | マッチした位置(1オリジン) | |
matchstr | 文字列 | 最初にマッチしたパターン |
groupmatchstr1 | 文字列 | 1つ目にグループマッチしたパターン |
groupmatchstr2 | 文字列 | 2つ目にグループマッチしたパターン |
groupmatchstr3 | 文字列 | 3つ目にグループマッチしたパターン |
groupmatchstr4 | 文字列 | 4つ目にグループマッチしたパターン |
groupmatchstr5 | 文字列 | 5つ目にグループマッチしたパターン |
groupmatchstr6 | 文字列 | 6つ目にグループマッチしたパターン |
groupmatchstr7 | 文字列 | 7つ目にグループマッチしたパターン |
groupmatchstr8 | 文字列 | 8つ目にグループマッチしたパターン |
groupmatchstr9 | 文字列 | 9つ目にグループマッチしたパターン |
関連コマンド
関連コマンドはありません。使用方法
使用例
・パターンマッチの使用例strmatch 'Microsoft Windows XP [Version 5.1.2600]' '\[(Version (\d+).(\d+).(\d+))\]' int2str s result messagebox s 'result' ; 22 messagebox matchstr 'matchstr' ; [Version 5.1.2600] messagebox groupmatchstr1 'groupmatchstr1' ; Version 5.1.2600 messagebox groupmatchstr2 'groupmatchstr2' ; 5 messagebox groupmatchstr3 'groupmatchstr3' ; 1 messagebox groupmatchstr4 'groupmatchstr4' ; 2600