Ведущий раздел этой статьи , возможно , придется переписать . Приводится причина: определение и ссылка относятся только к метасимволам регулярного выражения, а статья - не к ( Апрель 2019 г. ) ( Узнайте, как и когда удалить этот шаблон сообщения ) |
Метасимвол это символ , который имеет особое значение для компьютерной программы, таких как интерпретатор оболочки или регулярное выражение (регулярное выражение) двигатель.
В POSIX расширенных регулярных выражений , [1] имеется 14 метасимволы , которые должны быть избежали (предшествуют обратной косой черты ( \
)) для того , чтобы отбросить их особое значение и лечить буквально внутри выражения: открытия и закрытия квадратные скобки ( [
и ]
); обратная косая черта ( \
); каретка ( ^
); знак доллара ( $
); период / полная остановка / точка ( .
); символ вертикальной черты / трубы ( |
); знак вопроса ( ?
); звездочка ( *
); знаки плюс и минус (+
и -
); открывающие и закрывающие фигурные скобки / фигурные скобки ( {
и }
); открывающие и закрывающие круглые скобки ( (
и )
). [2] [3]
Например, чтобы сопоставить арифметическое выражение (1+1)*3=6
с регулярным выражением, правильным регулярным выражением является \(1\+1\)\*3=6
; в противном случае круглые скобки, знак плюса и звездочка будут иметь особое значение.
Другие примеры [ править ]
Некоторые другие символы могут иметь особое значение в некоторых средах.
- В некоторых оболочках Unix точка с запятой («;») является разделителем операторов .
- В XML и HTML , в амперсанд ( "&") вводит HTML сущности . [4] Это также имеет особое значение в командной строке MS-DOS / Windows . [5]
- В некоторых оболочках Unix и командной строке MS-DOS / Windows знак « меньше» и « больше» («<» и «>») используется для перенаправления, а знак ударения / обратной кавычки («« ») - для подмена команд . [5]
- Во многих языках программирования , строки являются Разграниченными с помощью кавычек (»или«). В некоторых случаях управляющие символами (и другие методы) используются для предотвращения разделителя столкновения , например , „Он сказал, \“ Hello \ „“.
- В строках PRINTF формата , то знак процента ( «%») используются для введения спецификаторов формата и должен быть экранирован , как «%%» следует толковать буквально. [6] В SQL процент используется как подстановочный знак . [7]
- В SQL символ подчеркивания («_») используется для соответствия любому одиночному символу. [7]
Побег [ править ]
Термин «избежать метасимвола» означает сделать метасимвол неэффективным (лишить его особого значения), заставив его иметь буквальное значение. Например, в PCRE точка (".") Обозначает любой отдельный символ. Регулярное выражение «AC» будет соответствовать «ABC», «A3C» или даже «A C». Однако если "." экранирован, он потеряет свое значение как метасимвол и будет интерпретироваться буквально как «.», в результате чего регулярное выражение «A \ .C» будет соответствовать только строке «AC».
Обычный способ экранировать символ в регулярном выражении и в других местах - это поставить перед ним обратную косую черту ("\"). В других средах могут использоваться другие методы, такие как командная строка MS-DOS / Windows, где вместо нее используется каретка («^»). [5]
См. Также [ править ]
- Язык разметки
Ссылки [ править ]
- ^ "Базовые спецификации Open Group, выпуск 6: Глава 9 - Регулярные выражения" . pubs.opengroup.org . Открытая группа . 2004 . Проверено 19 ноября 2018 .
- ^ Goyvaerts Ян (8 декабря 2016). «Быстрый старт с регулярными выражениями» . www.regular-expressions.info . Проверено 19 ноября 2018 .
- ^ Нильд, Томас (13 декабря 2017). «Введение в регулярные выражения» . O'Reilly Media . Проверено 19 ноября 2018 .
- ^ «Ссылки на символы в HTML 4» . www.w3.org . W3C . 24 декабря 1999 . Проверено 19 ноября 2018 .
- ^ a b c «Обзор командной оболочки» . docs.microsoft.com . Microsoft . 10 сентября 2009 . Проверено 19 ноября 2018 .
- ^ «Базовые спецификации Open Group, выпуск 7: fprintf» . pubs.opengroup.org . Открытая группа . 2018 . Проверено 19 ноября 2018 .
- ^ a b «КАК (Transact-SQL)» . docs.microsoft.com . Microsoft . 14 марта 2017 . Проверено 19 ноября 2018 .
Это язык программирования о связанной статье заглушка . Вы можете помочь Википедии, расширив ее . |