Chcę usunąć wszystkich nie-arabskich, nie angielskich i nie-liczbowych charecters z ciągu, z wyjątkiem kresek (-).Pozbądź się znaków alfanumerycznych z arabskiego UTF8 + ciąg angielski
udało mi się to zrobić dla niezarejestrowanych angielskich znaków alfanumerycznych tak:
$slug = ereg_replace('[^A-Za-z0-9-]', '', $string);
Ale dla arabskiego niezarejestrowanych znaków alfanumerycznych próbowałem to zrobić tak:
$slug = ereg_replace('\p{InArabic}', '', $string);
ale zrobił to rozebrać nie alfanumeryczne znaki! Próbowałem też this answer ale nie działało, zawsze zwraca '0' !!
$slug = preg_replace('/[^\x{0600}-\x{06FF}A-Za-z0-9-]/u','', $string);
Mam nadzieję, że ktoś może mi pomóc.
'ereg_replace' jest przestarzała. Powinien działać regex z 'preg_replace'. Czy możesz podać ciągi próbne tam, gdzie to nie działa? – Toto
Co to jest wyjście z 'preg_last_error()'? Fragment kodu działa. –
Dziękuję M42, które działało z pomocą odpowiedzi "xdazz", dziękuję wszystkim. –