По какой-то причине приведенный выше ответ не сработал для меня. Для таких, как я, которые приходят после, вот что я нашел.
Я ожидал, что одна обратная косая черта выйдет за скобки, однако вы должны использовать две, если шаблон хранится в строке. Первый обратный слэш экранирует второй в строку, так что регулярное выражение видит \]
. Поскольку регулярное выражение видит только одну обратную косую черту, оно использует ее для выхода из квадратной скобки.
\\]
В регулярном выражении это будет соответствовать одной закрывающей квадратной скобке.
Если вы, например, пытаетесь сопоставить символ новой строки, вы должны использовать только одну обратную косую черту. Вы используете шаблон escape-строки для вставки символа новой строки в строку. Регекс не видит \n
- он видит символ новой строки и соответствует ему. Вам нужны две обратные косые черты, потому что это не escape-последовательность строк, это escape-последовательность regex.