Domanda

Voglio un RegEx per abbinare valori di distanza nel sistema metrico. Questa espressione regolare deve corrispondere 12m, 100cm, 1km ignorando lo spazio bianco

È stato utile?

Soluzione

E per estendere la risposta di Paolo di includere i valori decimali luogo ...

(\d+).?(\d*)\s*(m|cm|km)

Altri suggerimenti

Prova questo:

(?:0|[1-9]\d*)\s*(?:da|[yzafpnμmcdhkMGTPEZY])?m

Come non è stato specificato esattamente quello che voleva, ho usato i tuoi esempi di ricavare che si desidera trovare un valore intero, seguito da spazio bianco opzionale, seguito da un'unità specificatore di km cm, mo. Quindi - questo è l'esempio più semplice di quel

.
/(\d+)\s*(m|cm|km)/

La prima parentesi cattura il numero, quindi salta 0-molti caratteri di spazio bianco prima di scattare le vostre unità richieste nel secondo set di parentesi.

Come si può vedere in altre risposte, si può andare al di là di questo per raccogliere valori decimali, e anche catturare un maggior numero di unità di multipli e sottomultipli troppo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top