Die richtige Implementierung wäre...
Ich wusste nicht, das es richtig ist, wenn eine Funktion zwei Werte liefert: Einen 'Value' und einen Rückgabewert. Zudem wäre eine Erklärung, wie Du sie angibst, ja überflüssig, wenn der Code wirklich selbstdokumentierend wäre

Wie wäre es (beim Ansatz 'self documenting code') mit drei Funktionen?
Delphi-Quellcode:
Function HasParameter (const AText, AParamName : string) : Boolean;
Function GetOptionalParamValue (const AText, AParamName : string) : String;
Function GetMandantoryParamValue (const AText, AParamName : string) : String;
DAS wäre dann selbstdokumentierend. Finde ich.