2023年11月10日(金)

正規表現の知らんかったやつを学んだので備忘録】

これまでやりたかったことを知らんかったのだ
理由を振り返ると、
よく使う一覧を見ただけでそれが全てだと思ってしまったことと、
一覧を見たときに説明が友達同士向けだったので読み飛ばしたことです。


 知識は使って初めて価値を持つよ。
価値を持って初めて覚えていられるよ。
英語がよくわからん理由と同じだね。
私は英語を使うから覚えていられるが、
もし英語を使わなかったら覚えていられなかった。
なので使い方も合わせてお話しします。


 私は食べたものをすべてリストにまとめています。
1日の最後に何を食べたかを取得して、
対応した栄養を計算します。
同時に、
食べたものを食糧庫リストから減らしていきます。
しかしこれらが同時にあると、
同じ言葉を含む別物をどうにかして取り除く必要がある。
パスタを食べた栄養を計算したいが、
パスタ新袋を開封した記録を見て食べたと思い込んではいけません。
そのために、
「パスタ」を見つけるが「パスタ新袋」を無視する書き方が必要になった。
それが下記です。
4つのパターンがあります。


「(?<=あんこ)いんこ」

「いんこ」に一致するよ。
ただし、直前に「あんこ」があるときのみ一致するよ。
例1:あんこいんこ (一致する)
例2:おいしいいんこ (一致しない)


「(?<!あんこ)いんこ」
「いんこ」に一致するよ。
ただし、直前が「あんこ」のときは無視するよ。
例1:あんこいんこ (一致しない)
例2:おいしいいんこ (一致する)

「いんこ(?=うんこ)」
「いんこ」に一致するよ。
ただし、直後に「うんこ」があるときのみ一致するよ。

「いんこ(?!うんこ)」
「いんこ」に一致するよ。
ただし、直後が「うんこ」のときは無視するよ。


 知らんかった。
これのおかげで他にも応用ができるぞお。
たとえば毎日の読書だ。
これまでは一覧表を作って、
日付に合わせたものを見つけていた。
これからはてけとーに並べたものから見つけられるぞ。
ややこしく書いて余計な部分を切り取ってから使っていたが、
最初から余計な部分がない状態で見つけられる。


 動作が減ったら処理の時間が縮むぜ。
すると機能を拡張できる余地になる。
するとさらに動作を減らせるようになる。
この繰り返しで、
日々をもーっと豊かにしていくぞい。

 


 今日はおしまいです。
なでてね。
匿名で、なんでも書いていいよ。
https://odaibako.net/u/key37me