Так как мы все догадываемся, я мог бы также высказать свое: я всегда думал, что это означало Python. Это может звучать довольно глупо - что, P для Python ?! - но в свою защиту я смутно вспомнил эту ветку [выделение мое]:
Тема: Утверждение (? P ...) расширений синтаксиса регулярных выражений
От: Гвидо ван Россум (gui ... @ CNRI.Reston.Va.US)
Дата: 10 декабря 1997 г., 15:36:19.
У меня необычный запрос для разработчиков Perl (тех, кто разрабатывает язык Perl). Я надеюсь, что это (perl5-porters) правильный список. Я пишу строку-подпись Python, потому что она является источником большинства работ, которые я здесь обсуждаю.
Вы, наверное, знаете о Python. Я создатель Python; Я планирую выпустить следующую «основную» версию, Python 1.5, к концу этого года. Я надеюсь, что Python и Perl могут сосуществовать в ближайшие годы; перекрестное опыление может быть полезным для обоих языков. (Я полагаю, что Ларри хорошо посмотрел на Python, когда он добавил объекты в Perl 5; О'Рейли публикует книги об обоих языках.)
Как вы, возможно, знаете, Python 1.5 добавляет новый модуль регулярных выражений, который более точно соответствует синтаксису Perl. Мы постарались максимально приблизиться к синтаксису Perl в рамках синтаксиса Python. Однако синтаксис регулярных выражений имеет некоторые специфичные для Python расширения, которые все начинаются с (? P. В настоящее время их два:
(?P<foo>...)
Аналогично круглым скобкам для группирования, но текст,
соответствующий группе, доступен после сопоставления через символическое имя группы «foo».
(?P=foo)
Соответствует той же строке, что и группа с именем "foo". Эквивалент \ 1, \ 2 и т. Д., За исключением того, что группа называется
по имени, а не по номеру.
Я надеюсь, что это специфичное для Python расширение не будет конфликтовать с какими-либо будущими расширениями Perl для синтаксиса регулярных выражений Perl. Если вы планируете использовать (? P, пожалуйста, сообщите нам как можно скорее, чтобы мы могли разрешить конфликт. В противном случае было бы неплохо, если бы синтаксис (? P мог быть зарезервирован для специфических для Python расширений синтаксиса. ( там какой-то реестр расширений?)
[...] На данный момент реестра нет - ваш первый запрос от сторонних perl5-портеров, так что это довольно низкая пропускная способность. (Извините, на прошлой неделе было еще меньше - я был в Нью-Йорке в Internet World.)
Во всяком случае, насколько я понимаю, вы, безусловно, можете иметь «P» с моим благословением. (Очевидно, Perl не нуждается в 'P' на этом этапе. :-) [...]
Так что я не знаю, чем исходный выбор P был мотивирован - pattern? заполнитель? пингвины? - но вы можете понять, почему я всегда ассоциировал это с Python. Что, учитывая, что (1) я не люблю регулярные выражения и избегаю их везде, где это возможно, и (2) этот поток произошел пятнадцать лет назад, довольно странно.
P
обозначаетPlaceholder
.