先読み/後読み

//参考

https://abicky.net/2010/05/30/135112/

https://qiita.com/mochizukikotaro/items/84f3ab2740b8efbe0dc6

3年と50年と100年

〇〇年というワードの1桁以上の数字だけマッチさせたい時

\d+年だとマッチするのは
3年
50年
100年

\d+(?=年)だとマッチするのは
1
50
100

指定された文字列の直前にある文字列をマッチ出来る
(?=\d+年)\d+
と記述した場合一桁以上の数字+年の並びになった文字列の直前の一にマッチし、その後に記述された
\d+でその位置に続く一桁以上の数字をマッチさせることになる為
実質 \d+(?=年) と同じ効果になる。

肯定的後読みは

<>で囲まれた中身のみをマッチさせたい
例えばbbbのaaaaと/aaaaだけ欲しい時は
(?<=<).+?(?=>)

否定はどちらも=を!にするのみ