Экранируйте текст, чтобы регулярное выражение находило его буквально в JavaScript, Python, PHP, Java, Go или .NET
Работает в вашем браузере. Ничего из того, что вы вводите, никуда не отправляется. Проверено 16 октября 2026 г..Экранирование regex ставит обратный слеш перед каждым символом с особым значением, чтобы шаблон находил текст буквально. 14 символов, которые нужно экранировать почти везде: . ^ $ * + ? ( ) [ ] { } | и сам обратный слеш. Каждый язык добавляет ещё несколько, а JavaScript и Java экранируют по-разному.
Эта страница переведена машинным способом с английского оригинала. Перевод ещё не проверен человеком, поэтому ориентируйтесь на английскую версию. Читать английский оригинал
Вставьте текст, который шаблон должен находить точно, или нажмите Попробовать пример.
Выберите язык: JavaScript, Python, PHP, Java, Go, .NET или sed и grep.
Включите По одному в строке, чтобы находить любую из нескольких строк, объединённых через |.
Нажмите Копировать или Ctrl+Enter и вставьте шаблон в свой код.
В регулярном выражении точка означает любой символ, плюс означает один или более раз, а квадратные скобки начинают набор. Чтобы искать текст, который их содержит, например цену вида $4.99 или имя файла вида report(1).pdf, каждый такой символ нужно экранировать. Этот инструмент делает это так же, как собственная функция экранирования каждого языка, поэтому шаблон ведёт себя точно так же, как в вашем коде.
| Язык | Соответствующая функция | Примечания |
|---|---|---|
| JavaScript | RegExp.escape |
также экранирует / и знаки препинания как коды \x; работает с флагами u и v |
| Python | re.escape |
только спецсимволы, начиная с Python 3.7 |
| PHP | preg_quote($s, '/') |
добавляет = ! < > : - # и разделитель / |
| Java | Pattern.quote |
заключает текст между \Q и \E |
| Go | regexp.QuoteMeta |
самый маленький набор: \ . + * ? ( ) | [ ] { } ^ $ |
| .NET | Regex.Escape |
также пробелы и #, для шаблонов, игнорирующих пробельные символы |
| sed, grep | Базовый синтаксис POSIX | . [ \ * ^ $ и разделитель / |
По одному в строке. Включите эту опцию, чтобы экранировать каждую строку отдельно и объединить их через |, тогда шаблон найдёт любой элемент списка слов, URL или имён файлов. Пустые строки и дубликаты удаляются. В sed и grep объединение выглядит как |, это понимают инструменты GNU.
Доказательство, а не доверие. Для JavaScript страница запускает шаблон в собственном движке вашего браузера и подтверждает, что он находит текст и ничего больше. Результат для JavaScript проверен на движке с флагами u и v и без них, а результат для Python — на re.escape из CPython на 728 строках.
Поместить шаблон в строковый литерал — это второй, отдельный шаг: обратный слеш в строке Java или C# нужно удвоить. Эту часть выполняет инструмент String Escape.
Всё работает в вашем браузере; ничего из того, что вы вставляете, никуда не отправляется.
Символы с особым значением: . ^ $ * + ? ( ) [ ] { } | и сам обратный слеш. Внутри шаблона они работают как подстановочные знаки, якоря, повторения или группы, поэтому буквальную точку нужно писать как \., а буквальный плюс — как \+. Некоторые языки экранируют ещё несколько символов, например / в JavaScript и PHP или пробелы в .NET.
Поставьте перед ней обратный слеш: \. находит только точку, а одиночная . находит любой символ. Поэтому example.com как шаблон находит и examplexcom, а example\.com находит только настоящий домен. Внутри квадратных скобок точка уже буквальная, поэтому [.] тоже работает.
RegExp.escape записывает начальную букву или цифру, а также знаки препинания вроде - , = и пробелы как коды \x, чтобы результат оставался правильным, куда бы его ни вставили: после \0 или \c, внутри класса символов или с флагами u и v. Шаблон получается длиннее, но всегда находит текст буквально.
Обе функции ставят обратный слеш перед спецсимволами, но preg_quote в PHP также экранирует = ! < > : - # и переданный разделитель, обычно /, а байт NUL записывает как \000. re.escape в Python также экранирует - & ~ # и пробельные символы. Результат каждой функции действителен только для своего движка.
Pattern.quote заключает текст между \Q и \E, что говорит движку Java читать всё между ними буквально. Если сам текст содержит \E, Java закрывает цитату, добавляет экранированное \E и открывает новую. Чтобы использовать результат в исходном коде Java, затем нужно удвоить каждый обратный слеш в строковом литерале.
Экранируйте каждое слово и объедините их вертикальной чертой: cat|dog|bird находит любое из трёх. Включите здесь По одному в строке, вставьте список, и каждая строка будет экранирована и объединена за вас, без пустых строк и дубликатов. Добавьте ^( и )$ вокруг, чтобы находить только целые строки.
Ставки и правила меняются; проверьте источник, прежде чем полагаться на цифру.
Всё ещё не получается? Задайте вопрос об инструменте «Экранирование regex» и ответить может любой, кто знает. Учётная запись не нужна.