Warum werden Regex-Erfassungsgruppen bei einer indiziert?

Ein Teil von mir ist die Sorge, dass diese Frage geschlossen wird, aber ich bin wirklich verblüfft von etwas. In der Regex jeder Sprache, die ich verwendet habe, werden die Erfassungsgruppen mit eins indiziert, auch wenn der Rest der Sprache mit null indiziert ist. Ich dachte an Designentscheidungen, die zu einer 1-Indizierung führen würden, die normalerweise die Eintrittsbarriere für Nicht-Techniker senkt. Wenn es jedoch um Regex geht, der bereits höllisch und unverständlich ist, scheint dies nicht wirklich der Fall zu sein halt.

Da außerdem jede Sprache ihre eigenen kleinen Änderungen an Regex zu haben scheint, erscheint es sinnvoll, die Erfassungsgruppenindizierung mit dem Rest der Sprache in Einklang zu bringen.

Gibt es eine andere Erklärung? Die Idee ist mir in den Sinn gekommen, dass die 1-Indizierung ein Ergebnis von etwas ist, das sich tiefer im Bauch des Regex befindet (wie etwas, das von Natur aus den Nullpunkt einnimmt) oder von etwas in diese Richtung. Trotzdem konnte ich keine Dokumentation zu dieser besonderen Eigenheit finden. Gibt es irgendwelche Regex-Meister, die wissen, dass hier etwas Tieferes vor sich geht, oder handelt es sich nur um etwas, das sich in ernsthaftem Legacy-Code befindet?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage