7
ben hariç bir dizeden bir dize tüm karakterler şerit çalışıyorum:Düzenli ifadeler PHP
- Alfanümerik karakterler
- Dolar işareti (
$
) - çizgi (
_
) kod noktalarıU+0080
veU+FFFF
preg_replace('/[^a-zA-Z\d$_]+/', '', $foo);
:
Bunu yaparak ilk üç koşulu var? I looked at using \X
ancak 65.000'den fazla karakteri listelemenin daha iyi bir yolu olmalı.
Evet bazı exa mples OP'den daha açık olurum – anubhava
inanıyorum Başlangıçta '\ w' diye tereddüt ettim çünkü yerel ayara özgü eşleşmenin şeyleri etkileyip etkilemeyeceğinden emin değildim ama bu Unicode aralığı aksanlı karakterleri her zaman kaplıyor gibi görünüyor. . Aradığım şey, teşekkürler. Bir yan notta, yalnız bir vekil nedir? –
@ rink.attendant.6: Daha fazla karakterin belirtilmesine izin vermek için UTF-16'da vekiller belirtmek için 'd800' ile 'dfff' arasında bir aralık vardır. Tek bir vekil, UTF-16'da geçerli bir karakter değildir (geçerli bir karakter belirtmek için bir çift gereklidir). Yine de, PCRE, dizede yalnız bir vekil ile karşılaştığında bir hata atarsa, hatırlayamıyorum. – nhahtdh