MW211 EXIT

devlog
正規表現/先頭のみ末尾のみ
2013年11月04日
「abba」という文字列で先頭の「b」もしくは、末尾の「b」のみを検索する正規表現。
┌────┬─────────────────────────────────┐
│先頭のみ│(?<=^[^b]*)b                                                      │
├────┼─────────────────────────────────┤
│末尾のみ│b(?=[^b]*$)                                                       │
└────┴─────────────────────────────────┘

ちなみに逆にそれらを除いた場合。
┌────┬─────────────────────────────────┐
│先頭以外│(?<!^[^b]*)b                                                      │
├────┼─────────────────────────────────┤
│末尾以外│b(?![^b]*$)                                                       │
└────┴─────────────────────────────────┘

ついでに応用で、一つしかない場合のみヒットさせるのはこれ。
┌────┬─────────────────────────────────┐
│唯一    │(?<=^[^b]*)b(?=[^b]*$)                                            │
└────┴─────────────────────────────────┘

【注意】
  preg系では「(?<=.*)」のような可変のものは認められないので
  エラーとなる模様。
分類:正規表現