PHP basit regex

2 Cevap php

Ben '0 sadece varsa bir dize doğrulamak için -9 'karekter 7 ile 9 arasında uzunluğu istiyorum.

Ne var [0-9] {7,9} ama bu ben istemiyorum çok, hangi on karakter bir dizge ile eşleşir.

Teşekkürler.

2 Cevap

Eğer büyük bir dize içinde 7-9 basamaklı sayıları bulmak istiyorsanız, a negative lookbehind and lookahead maç bir rakam ile önce veya sonra değil doğrulamak için kullanabileceğiniz

(?<![0-9])[0-9]{7,9}(?![0-9])

Bu gibi ayırır

  • (?<![0-9]) sağlamak sonraki maçta bir rakam öncesinde değil
  • İstediğiniz gibi [0-9]{7,9} 7-9 basamak maç
  • (?![0-9]) sonraki karakter bir rakam değil emin olun

Sadece tüm dize bir 7-9 basamaklı bir sayı olduğunu sağlamak istiyorsanız, bir başlangıç ​​maçı çapa ve ^ ile bitirmek ve $

^[0-9]{7,9}$

Sen kullanmak isteyeceksiniz ^[0-9]{7,9}$.

$ Ucunu maçlar ise ^, dize başında eşleşir.