2015-02-01 14 views
6

Ho tre campi di testo tutti che sono numeri o un numero decimale.Verificare se stringa è il numero in Android

Sono accettati come stringhe successivamente convertite.

Tuttavia, voglio convalidare questi campi in modo che vengano accettati solo numeri o numeri decimali.

Qual è il modo più semplice per garantire che questi campi siano solo caratteri 0-9.

Preferirei una dichiarazione if, ma qualsiasi soluzione sarebbe buona!

+0

uso questa espressione regolare '^ \\ d + (:?. \\ \\ d +)? $'. –

+0

lo metto nella dichiarazione if? – user3411002

+0

'if (string.matches (" \\ d + (?: \\. \\ d +)? ")) {' –

risposta

18

Utilizzare il metodo string.matches che accetta un'espressione regolare come argomento.

if(string.matches("\\d+(?:\\.\\d+)?")) 
{ 
System.out.println("Matches"); 
} 
else 
{ 
System.out.println("No Match"); 
} 
+0

Come direi che non corrisponde a questa stringa – user3411002

+0

quale stringa ???? –

+0

Che cosa è l'opposto di questa regex in modo che solo accetta lettere e non numeri o decimali. – user3411002

0

Se si sta gonfiando quelle textviews da XML si può semplicemente utilizzare:

android:inputType="number" 
Problemi correlati