Ich habe hier ganz bewusst ausschließlich String-Funktionen verwendet, weil die API-Funktionen allesamt keine Abweichung vom Idealfall zulassen. Steht auch in den jeweiligen Remarks immer erwähnt, dass den Funktionen eigentlich grundsätzlich nicht zu vertrauen ist und man sie nur anwenden soll, wenn sicher ist, dass der auszuwertende String zu 100% den (viel zu engen) Anforderungen der Funktion entspricht. [Das ist jetzt meine etwas überspitzte Interpretation der Remarks]
Natürlich ist es korrekt zu sagen: Das kann die Funktion, aber nur bei den und den Bedingungen. Mir war aber das Korsett zu eng. Mir ist es lieber, dass eine Funktion auch evtl. abartige Sonderfälle behandelt. Dann ist diese Behandlung einmalig integriert und muss nicht immer wieder, wenn Sonderfälle auftreten könnten, in die Nachbehandlung eingebunden werden.