[[授業資料/正規表現]] *タグつき正規表現とは [#pe546785] -一度正規表現にマッチした部分を後で再利用することができます。 -特に置換において威力を発揮します。 **使い方 [#l5defcd3] +グループ化の「()」を使って、正規表現の中の再利用する部分を囲みます。 +1.で囲んだ部分を「\1」で参照します。 ***例:動詞「読む」と思われるものを〔〕で囲む。 [#w102e5ca] -検索語:(読[まみむめもん]) -置換する語:〔\1〕 ***例:携帯電話の番号と思われるものを【】で囲む。 [#jbeadb73] -検索語:(0[89][0-9]-[0-9][0-9][0-9][0-9]-[0-9][0-9][0-9][0-9]) -置換する語:【\1】 ***例:送りがなの揺れを統一する [#acb7daf2] -検索語:行な?([わいうえおっ]) -置換する語:行\1 (「行う」に統一) --または :行な\1 (「行なう」に統一) ***やや複雑な例:青空文庫形式の漢字についた振り仮名をひらく(振り仮名を本文にする) [#q7cbd506] -検索語:|?([亜-熙]+)《([^》]+)》 --またはものぐさ指定で:|?([亜-熙]+)《(.+?)》 -検索語:|?([亜-熙々]+)《([^》]+)》 --またはものぐさ指定で:|?([亜-熙々]+)《(.+?)》 -置換する語:\2~ (漢字だけにするなら\1) ***複雑な例:タグ付き正規表現でKWICを修正する(1行に2個以上ある場合) [#m14f1962] (''RE''とある箇所を検索に使った正規表現に置き換えて使用) -(^[^,]*,[^,]*,[^,]*,)(.*)(,''RE'',)([^,]*)(,''RE'',.*)$ --(^.*?,.*?,.*?,)(.*)(,''RE'',)(.*?)(,''RE'',.*)$ -\1\2\3\4\n\1\4\5 →[[grepと置換でKWICを作る・1行に複数出てきた場合の対処>../grepと置換でKWICを作る#de00e0b3]]参照