SORU
7 HAZİRAN 2011, Salı


Nasıl ereg ifadeler gebelikte dönüştürmek PHP miyim?

POSIX regular expressions (ereg) kaldırılmış olduğundan beri PHP 5.3.0, PCRE (Perl Compatible Regular Expressions) (preg) eski ifadeleri dönüştürmek için kolay bir yol olduğunu bilmek istiyorum.

Örnek başına, bu düzenli ifade var:

eregi('^hello world');

Nasıl preg_match uyumlu ifadeler ifadeler haline çevirebilir miyim?

Not:Bu yazı tüm mesajları ilgili sorularınız için gebelikte için ereg ve yinelenen seçenekleri dönüşüm için İlgili için bir yer tutucu olarak hizmet vermektedir.Lütfen bu soruyu kapatmayın.

İlgili:

CEVAP
7 HAZİRAN 2011, Salı


Sözdizimi en büyük değişiklik delimiters ektir.

ereg('^hello', $str);
preg_match('/^hello/', $str);

Sınırlayıcı alfa-sayısal bir eğik çizgi veya boşluk karakteri olmayan oldukça çok şey olabilir. En çok kullanılan genel ~, / #.

Ayrıca eşleşen parantez kullanabilirsiniz:

preg_match('[^hello]', $str);
preg_match('(^hello)', $str);
preg_match('{^hello}', $str);
// etc

Eğer ayırıcı normal ifadede bulunursa, ondan kaçmak için:

ereg('^/hello', $str);
preg_match('/^\/hello/', $str);

Kolayca preg_quote kullanarak bir dize sınırlayıcı ve ayrılmış karakterler tüm kaçış:

$expr = preg_quote('/hello', '/');
preg_match('/^'.$expr.'/', $str);

Ayrıca, ancak sisteminizde çeşitli şeyler için modifiers destekler. En çok kullanılan bir büyük / küçük harf duyarlı değiştirici i, eregi alternatif:

eregi('^hello', 'HELLO');
preg_match('/^hello/i', 'HELLO');

PCRE syntax in PHP in the manual olarak list of differences POSIX arasında bir düzenli ifade için tam bir referans bulmak ve ifade dönüştürme yardım / edebilirsin.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • theavettbrothers

    theavettbrot

    9 ŞUBAT 2007
  • TokShogun

    TokShogun

    6 HAZİRAN 2009
  • UniqueApps

    UniqueApps

    4 Ocak 2009