hello試した方法は、[]内にマッチする正規表現パターンを否定先読みで除外するという方法で、以下のように書きましたが、結果は[]内のあいうえお。マッチしてしまいました。/^(?!\[[\s\S]*?\]).*?。間に挟まれた部分を削除してから判定するアプローチもあるかなと思いました。13:42ネストはないです。cubickさんの方法で試してみます。票2フラグにmを指定しているため、^$が行頭と行末に一致します。ご質問の/^(?!\[[\s\S]*?\]).*?。$/gmは否定先読みとは関係なく、行末に。ない全ての行にヒットしています。書き換えることで、その行もヒットしてしまいます。複数行の[]を除外しながら各行末の。判定するのは厳しいです。さんのコメントのようにまずはmフラグを使わずに括弧を除外してから、改めてmフラグで各行のマッチを取得する方法が、目的を満たすには相応しい書き方だと思います。