正規表現で文字列の置換を行う
val = replace(p1,p2,p3,p4,p5,p6)
p1:検索される文字列 p2:検索する文字列 p3:置き換える文字列 p4(0):大文字と小文字を区別するなら1 p5(0):最初に一致した部分だけを置換するなら1 p6(0):全体を一つの行と見なすなら1
(プラグイン / モジュール : mod_regexp)
p1の文字列のなかでp2に一致した部分をp3で置き換えた文字列を返します。 p2には正規表現のパターンを指定します。 p4を1にすると大文字と小文字を区別します。0や省略した場合は区別しません。 p5を1にすると最初に一致した部分だけを置換します。0や省略した場合は全ての一致した部分を置換します。 p6を1にするとメタ文字 ^ と $ が改行直後・直前に対応しません。0や省略した場合は対応します。 正規表現のパターンについてはmatchの項目を参照してください。 p3には以下の特殊文字が使用できます。
| 文字 | 説明 |
|---|---|
| $num | num番目のサブマッチ文字列に置換されます。一つ目のサブマッチは$1で最大$99まで指定できます。 |
| $& | p2に一致した文字列に置換されます。 |
| $` | p1の中で、p2に一致した文字列よりも前方の部分に置換されます。 |
| $' | p1の中で、p2に一致した文字列よりも後方の部分に置換されます。 |
| $$ | $に置換されます。 |
#include "mod_regexp.as"
a={"
太郎:50,100,70
一郎:30,50,60
花子:60,40,50
"}
mes replace(a,":","の成績:")
;---------------結果--------------
;太郎の成績:50,100,70
;一郎の成績:30,50,60
;花子の成績:60,40,50
mes replace(a,"(.*):(\\d+),(\\d+),(\\d+)","$1の成績:算数=$2,国語=$3,社会=$4")
;---------------結果--------------
;太郎の成績:算数=50,国語=100,社会=70
;一郎の成績:算数=30,国語=50,社会=60
;花子の成績:算数=60,国語=40,社会=50
| match | 正規表現で検索して最初に一致した文字列を返す | (mod_regexp) |
| submatch | 正規表現で検索して最初に一致したサブマッチ文字列を返す | (mod_regexp) |
| matches | 正規表現で検索した複数の結果を取得する | (mod_regexp) |
| プラグイン / モジュール | mod_regexp |
| 備考 | Internet Explorer 5.5 以上が必要 |
| グループ | 正規表現検索命令 |
| ヘッダファイル | common\mod_regexp.as |