RegexPattern/RegexMatcher

Q1
正規表現を利用した文字列解析

A1
正規表現を利用すると、ある一定の型にはまった文字列から、その一部を取得することができます。

正規表現を指定する際に取得したい箇所「()」で囲み、RegexMatcherオブジェクトを作成。
find及びmatchesメソッド(※)を実行し結果がtrueであれば、groupメソッドで「()」で指定した箇所を取得することができます。

※findメソッドは部分一致、matchesメソッドは完全一致です。


[サンプルコード]

「[xxx](xxx)xxx.xxx」(xxxはアルファベット、数字、"_"で構成された任意の文字列)のフォーマットに合致する文字列をパートごとに抜き出す
var reg_arg = "\\[([\\w]+)\\]\\(([\\w]+)\\)([\\w]+)\\.([\\w]+)"; /* 正規表現 */
var s = "[aaa](bbb)ccc.ddd [eee](fff)ggg.hhh"; /* 解析対象文字列 */

var p = RegexPattern.compile(reg_arg);
var m = p.matcher(s);

/* findメソッド */
while (m.find()) {
 for (var i = 0; i < m.GroupCount; i++) {
  print(str(i + 1) + ":" + m.group(i + 1),"\n");
 }
}
管理番号: Rgx_003
  Biz-Collections Bizの宝箱 トップへ
  Biz/Browser・Biz/Designer TIPS集 トップへ