Wie kann man bei Shell das erste Zeichen einer Zeichenkette überprüfen, ob sie eine Zahl ist?

...komplette Frage anzeigen

2 Antworten

Ungetestet sollte es in der Bash mit einem Regulären Ausdruck so funktionieren:

if [[ "$string" = [0-9]{1} ]]; then
    echo "Zahl"
fi

Gruß

Shell ist zwar keine sprache die ich gut kenne aber ich kenne auch keine abfrage ob zahl oder nicht. also einfach den ersten buchstaben mittels substring nehmen und fragen ob der wert größer oder gleich 0 ist. Dann muss es wohl eine zahl sein ;) Grüße

$x = ${stringX:0:1}

if( $x >= 0) { return true; }

Babelfish 24.10.2012, 10:26

Ich weiß nicht, wie es in der Shell ist aber in vielen anderen Sprachen wird ein Buchstabe oder anderes Zeichen beim Typecast auf einen Integer in eine Null gewandelt, weshalb dieser Test vermutlich nicht funktioniert.

0

Was möchtest Du wissen?