Puisque nous devinons tous, je ferais aussi bien de donner le mien: j'ai toujours pensé que cela représentait Python. Cela peut sembler assez stupide - quoi, P pour Python?! - mais pour ma défense, je me suis vaguement souvenu de ce fil [c'est moi qui souligne]:
Objet: Réclamation d'extensions de syntaxe d'expression régulière (? P ...)
De: Guido van Rossum (gui ... @ CNRI.Reston.Va.US)
Date: 10 décembre 1997 15:36:19
J'ai une demande inhabituelle pour les développeurs Perl (ceux qui développent le langage Perl). J'espère que (perl5-porters) est la bonne liste. Je suis en train de copier le string-sig Python car il est à l'origine de la plupart des travaux dont je parle ici.
Vous connaissez probablement Python. Je suis le créateur de Python; Je prévois de sortir une prochaine version "majeure", Python 1.5, d'ici la fin de cette année. J'espère que Python et Perl pourront coexister dans les années à venir; la pollinisation croisée peut être bonne pour les deux langues. (Je pense que Larry a bien examiné Python lorsqu'il a ajouté des objets à Perl 5; O'Reilly publie des livres sur les deux langues.)
Comme vous le savez peut-être, Python 1.5 ajoute un nouveau module d'expression régulière qui correspond plus étroitement à la syntaxe de Perl. Nous avons essayé d'être aussi proche que possible de la syntaxe Perl dans la syntaxe de Python. Cependant, la syntaxe regex a des extensions spécifiques à Python, qui commencent toutes par (? P. Actuellement, il y en a deux:
(?P<foo>...)
Similaire aux parenthèses de regroupement normales, mais le texte
correspondant au groupe est accessible après que la correspondance a été effectuée, via le nom de groupe symbolique "foo".
(?P=foo)
Correspond à la même chaîne que celle correspondant au groupe nommé "foo". Équivaut à \ 1, \ 2, etc. sauf que le groupe est désigné
par son nom et non par son numéro.
J'espère que cette extension spécifique à Python ne sera pas en conflit avec les futures extensions Perl de la syntaxe des expressions régulières Perl. Si vous prévoyez d'utiliser (? P, veuillez nous en informer dès que possible afin que nous puissions résoudre le conflit. Sinon, ce serait bien si la syntaxe (? P pourrait être réservée en permanence aux extensions de syntaxe spécifiques à Python. (Is existe-t-il une sorte de registre d'extensions?)
à quoi Larry Wall a répondu:
[...] Il n'y a pas de registre pour le moment - la vôtre est la première requête provenant de l'extérieur de perl5-porters, donc c'est une activité à faible bande passante. (Désolé, c'était encore plus bas la semaine dernière - j'étais à New York à Internet World.)
Quoi qu'il en soit, en ce qui me concerne, vous pouvez certainement avoir «P» avec ma bénédiction. (De toute évidence, Perl n'a pas besoin du 'P' à ce stade. :-) [...]
Donc je ne sais pas en quoi le choix initial de P était motivé par - motif? espace réservé? des pingouins? - mais vous pouvez comprendre pourquoi je l'ai toujours associé à Python. Ce qui compte tenu du fait que (1) je n'aime pas les expressions régulières et les évite autant que possible, et (2) ce fil de discussion s'est produit il y a quinze ans, est assez étrange.
P
signifiePlaceholder
.