正規表現
正規表現の Non-capturing group は (?:) と表記しますが*1,これを間違えて (:?) と書いてしまったため,コロンが0文字か1文字という意味になり,意図した動作にならないという経験をしました. ? は直前の文字が0文字か1文字存在することを示すので,( の…
\d Matches a digit character. \D Matches a non-digit character. \s Matches any white space including spaces, tabs, form-feed characters, and so on. \S Matches any non-white space character. \w Matches any word character including underscor…
正規表現には肯定先読み (?=...) と肯定後読み (?<=...) と呼ばれる機能があり,先頭/末尾ではない文字列を検索するのに有用なので紹介します. 肯定先読みや肯定後読みを文章で説明するよりも,Pythonのunittestとしてソースコードで表現する方が分かりやす…
ネストされた括弧を扱おうと正規表現を調べましたが,Pythonの標準のreには,(?R)など再帰が扱えないことが分かり,代わりにregexを使えばよさそう*1ということは分かりましたが,わざわざ正規表現を使わなくてもよいのではと思い,シンプルに書いてみました…