as3 任意の文字に改行を含める
2011/12/20
フラグ「s」を使う。
※任意の文字の正規表現の「.」は改行を含まないらしい。フラグ「s」を使うと改行を含んでくれるらしい。
※任意の文字の正規表現の「.」は改行を含まないらしい。フラグ「s」を使うと改行を含んでくれるらしい。
メモ
HTMLソースからdivタグの全部を取得する場合。
- var str:String = "~HTMLソース~";
- var pt:RegExp = new RegExp("<div(.*)?</div>", "gs");
- var mchStrArys:Array = str.match(pt);
フラグと内容
フラグ | 内容 |
---|---|
g | global。対象全部。これが無ければ一つ目のみ。 |
i | ignoreCase。大文字・小文字区別なし。 |
m | multiline。「$」と「^」は行末・行頭にも一致。 |
s | dotall。任意の文字である「.」は改行文字にも一致。 |
x | extended。パターン内に記載した空白を無視する。 |
フラグ「x」
下記の二つの記述は同じになる。
/<p(>|(\s*[^>]*>)).*?<\/p>/gi
と
/ <p (> | (\s* [^>]* >)) .*? <\/p> /gix
と
/ <p (> | (\s* [^>]* >)) .*? <\/p> /gix
※フラグ「x」をつけることによりパターン内に記載した空白が無視される。目的は正規表現の記述を見やすくするためらしい。