みーのぺーじ

みーが趣味でやっているPCやソフトウェアについて.Python, Javascript, Processing, Unityなど.

正規表現で Non-capturing group を書き間違えた

正規表現の Non-capturing group は (?:) と表記しますが*1,これを間違えて (:?) と書いてしまったため,コロンが0文字か1文字という意味になり,意図した動作にならないという経験をしました.

? は直前の文字が0文字か1文字存在することを示すので,( の直後に配置することで新しい意味を与えることができる,という意図で作られた文法であることを理解すれば間違わなくなりそうです.