正規表現とどう向き合っていくか
正規表現は記号を組み合わせて複雑にテキストを検索をすることができるが、 込み入った事象をひとつの文字列で表現するのは適切ではない
正規表現が作られた歴史的経緯は、UNIXシステムで文字を検索するためだったので、これは仕方ない シェルスクリプトで快適に文字を検索する仕組みが現れなかったのはなぜだろうか?miyamonz.icon
そもそも、あまり込み入った検索をする機会がないのかもしれない
シェルスクリプトならパイプなどを使えば絞り込みはやりやすい
正規表現において出現する概念を、プログラミングの変数として格納して組み合わせて記述するほうが快適に思える
ただしそのためには、そもそも正規表現の全体像、マッチなどにまつわる手続きを把握しないと難しい
まずこのように検索して、さらにマッチした範囲において絞り込んで更に検索する、というやり方は良さそうである
正規表現をプログラマブルに書きたい
あった
Emacsのrxというライブラリ
ストリームとして捉える
文章入力においても
大きめの文書(ブログ投稿)
センテンス区切り
正規表現における文章内のマッチ
など、階層構造があるし、どのようにセンテンスを切るかという問題もある
大量の文章をすべて目を通すわけにはいかない
適当に眺めつつ、絞り込みを行う
やってみたいことをやる
不必要な記号の削除、置き換え
固有名詞
頻出するならなにかやってみるかとか
やってみないとわからん
これのtypeをみれば正規表現どう理解すればいいのか分からんつらみが解消するな
これで完全に理解した気がする
正規表現は、階層構造を有する表現である
そのためには、どの記号で階層が構築されるのかを把握するべきである
階層を構成するための要素の型を把握するとわかりやすい
上のパーザのtoken.typeのこと
正規表現の解説はあまりそれを指摘してくれていない
ちゃんとした本には書いてあるのだろうか?後で調べたい
記号と意味の対応関係をただ羅列するだけだと忘れる
階層を作る概念がわかっていれば、個別の記号を忘れても調べて思い出せる