|
[348] Re:ヘルプのコメント(rev.1135) | |
|
▽ 2007/9/30 (日) 08:20:31 ▽ K.Takata |
| > ▼[HLP000006.html]
> 正規表現の違いについて(別途確認します.)
まずは、Bregexp.dllでも使えるものについて。
>パターンについて
>. \nを除く任意の1文字 [.\n]と同じ
「[^\n]と同じ」の誤記?
>使える(かもしれない)直前のパターンの数量子
・? の最小一致である ?? の記載がありません。
・m は省略可能であることを記載するか、別途 {n,} と {n,}? の欄を作った方が
良いかもしれません。
・{n} と同じ意味で {n}? も使えます。
・最大一致(欲張りな量指定子)と最小一致(無欲な量指定子)は別の表にしても
良いかもしれません。
>使える(かもしれない)エスケープシーケンス
>\b 単語の境界(SJIS未対応)
・「SJIS未対応」の意味がよく分かりません。\w に合わせて、「英単語の境界」に
した方が良いかもしれません。
・[ ] の中で \b を使うと、バックスペース(BS)の意味になることも記載した方が
良いかもしれません。
>\Z 文字列の最後
一般的な意味は、「文字列の最後、または文字列の最後の改行の直前」です。
sakuraの改行の扱いに合わせて適宜修正すべきだと思います。
>\n ( )でグループ化した文字列を指定する(nは1) 置換文字列などに使用できます
「(nは1)」は変です。「(nは1以上の整数)」等でしょうか。
また、Perl では、置換文字列には、\n より $n が推奨されています。
(sakuraで使うにはどちらでも良いかもしれませんが。)
Bregexp.dll では \G は使えないことになっていますが、全く使えないわけではなく、
限定的に使用可能です。
検索では使い道はなさそうですが、置換では有用な場合もあるかもしれません。
http://homepage3.nifty.com/k-takata/diary/2007-09.html#22a
▼拡張式集合
(?...) 形式の拡張正規表現については、Bregexp.dll のドキュメントには
何も書かれていませんが、以下のものが使えます。
(?#...) 注釈
(?imsx) 孤立オプション
i: 大文字小文字照合
m: 複数行 (sakuraではデフォルトでon?)
s: 単一行 (. が \n にもマッチ)
x: 拡張形式(空白を無視、# 以降を無視)
(式) 捕獲式集合
(?:式) 非捕獲式集合 (グループ化のみ)
(?=式) 先読み
(?!式) 否定先読み
・用語は鬼車のドキュメントから持ってきましたので、必要に応じて変更すべきかも
しれません。
・sakuraが複数行の検索に対応していないことを考えると、(?m) の記載はあまり
意味がないかもしれません。
・Perl 5.005 から使えるようになった、
(?-imsx), (imsx-imsx:式), (?<=式), (?<!式), (?>式) は、
bregonig.dll では使用できますが、Bregexp.dll では使用できません。
|
|
|