2016-04-13 12 views
1

ile ayrılan 3 3 basamaklı değerler:Regex için aşağıdaki biçimdedir bir yazılım sürümü alanı için bir normal ifade yazıyorum bir süre

Bu 3 parça arasında olabilir

xxx.yyy.zzz Her biri 1 ila 3 basamak. Ör:

1.2.3 
100.2.300 
111.222.333 

ben bu amaç için bu regex formüle ama yanlış oldu: onun düzgün çalışmasını almak

[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3} 

ne modifiye edilmelidir?

+1

rakamıyla demektir \d kullanabilirsiniz. –

+0

'var re = /[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/g; ' –

+0

@ Tim007 Yorum için teşekkürler. Bunu cevap olarak verebilir ve kabul edildi olarak işaretlerim. – user2991608

cevap

0

bu

\d{1,3}\.\d{1,3}\.\d{1,3} 

veya

[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3} 

Regex demo

Javascript

var re = /\d{1,3}\.\d{1,3}\.\d{1,3}/g; 
deneyin

veya

var re = /[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/g; 
3

Normal ifadedeki noktalardan kurtulmanız gerekir, aksi halde herhangi bir karakter olarak sayılır. Eğer noktalar kaçış yoksa

var regex = /[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/; 
regex.test('1.2.3'); //true 
regex.test('100.2.300'); //true 
regex.test('111.222.333'); //true 

, sen noktanın yerine herhangi bir karakter temin etmek mümkün olacaktır.

var badRegex = /[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}/; 
badRegex.test('1a2z3'); //true 
badRegex.test('100-2#300'); //true 
badRegex.test('111f2229333'); //true 
2

Sen \ ile nokta kaçış olmalı ve ayrıca

\d{1,3}\.\d{1,3}\.\d{1,3}

noktalar Escape