GetArg 関数
カテゴリー : テキスト処理計算結果のデータタイプ : テキスト
対応FileMakerバージョン :
作者 : 給前悟郎 株式会社ジェネコム
概要
任意の文字で区切りられた文字列から、指定した位置の値を取り出します。構文
GetArg ( 文字列; 区切り文字; 位置 )
引数
| 引数名 | タイプ | 備考 | 例 |
|---|---|---|---|
| 文字列 | テキスト | 文字列 | あいうえお|ABCDEF|1234567|アイウエオ |
| 区切り文字 | テキスト | 区切り文字 | | |
| 位置 | 数字 | 位置 | 3 |
例
GetArg ( "あいうえお|ABCDEF|1234567|アイウエオ" ; "|" ; 3 )
結果
1234567
式
/*
GetArg ( 文字列; 区切り文字; 位置 )
第一引数の文字列を第二引数の文字で区切り、第三引数の位置の文字列を抜き出します。
*/
Let(
[
Max=PatternCount ( 文字列 ; く )+1;
Begin = Position ( Arg ; Sep ; 1 ; No -1 )+1;
Next = Position ( Arg ; Sep ; 1 ; No );
Cnt = Position ( Arg ; Sep ; Next ; 1 ) - Begin;
No = GetAsNumber ( No )
];
Case(
No < 1;
"";
No = Max;
Middle ( Arg ; Begin ; Length( Arg ) );
No < Max;
Middle ( Arg ; Begin ; Cnt )
)
)
GetArg ( 文字列; 区切り文字; 位置 )
第一引数の文字列を第二引数の文字で区切り、第三引数の位置の文字列を抜き出します。
*/
Let(
[
Max=PatternCount ( 文字列 ; く )+1;
Begin = Position ( Arg ; Sep ; 1 ; No -1 )+1;
Next = Position ( Arg ; Sep ; 1 ; No );
Cnt = Position ( Arg ; Sep ; Next ; 1 ) - Begin;
No = GetAsNumber ( No )
];
Case(
No < 1;
"";
No = Max;
Middle ( Arg ; Begin ; Length( Arg ) );
No < Max;
Middle ( Arg ; Begin ; Cnt )
)
)
エンコードは Unicode (UTF-8)、改行タイプは LF (Unix) 形式のテキストとして保存します。
テキストエディタで正常に開かない場合は、エンコードを指定してファイルを開くようにしてください。
詳細説明
任意の区切り文字で区切られている文字列を分解し、指定された位置の値を返します。なお、もし"ID|名前|住所"という引数に対して GetArg("ID|名前|住所"; "|"; 4) という存在しない位置の値を指定した場合は値は返りません。この関数が使用する他のカスタム関数
- なし
この関数を使用する他のカスタム関数
- なし
フィードバック
この関数について何かお気づきの点がありましたら、お気づきの点、ご意見、ご感想などをお知らせください。FMPro.jp 事務局経由でカスタム関数の作者に転送させていただきます。なお、いただいたフィードバックにつきましては、FMPro.jp 事務局から個別にご返信を差し上げておりません。あらかじめご了承いただくようお願いいたします。
注意:ここで紹介されているカスタム関数をご自分のシステムに組み込んだ場合に発生した問題についてはFMPro.jpは責任を負いません。