ループ展開
◆マッチしたい条件
「"こんにちは"」のような、"で囲まれた文字列("含む)をマッチングさせる。
ただし、特殊文字としてダブルコーテーション自体を表す「\"」が文字中に現れる。
◆ループ展開
1,パターンの開始・終了を表すパターンを考える。
→この場合だとどちらも「"」
2,パターンに含まれる要素の内、一般要素・特殊要素を表すパターンを考える。
→一般要素:[^\\"] 特殊文字以外の文字
特殊要素:[\\"] ダブルコーテーション自体を表す特殊文字
3,「パターン開始 通常要素*(特殊要素 通常要素*)* パターン終了」となるようにパターンを組み立てる。
→ [^\\"]*([\\"][^\\"]*)* となる。