لديك حساب بالفعل؟ دخول
دخول  سجل الأن 
دالة جاهزة لتنظيف عبارة معينة
السلام عليكم و أسعد الله يومكم بكل خير
أحتاج دالة جاهزة و تكون صغيرة و سريعة لتنظيف جملة انجليزية و تحتفظ فقط ب
abcdefghijklmnopqrstuvwxyz-
يعني مثلا إذا تم إدخال نص مثل هذا
élément d'anger
يتم تحويله الى
element-danger

الفراغ يتم إضافة فيه
-
و الحروف الخاصة يتم تحويلها الى حروف عادية
é أو è الى e
à الى a
ç الى c
و هكذا

أتمنى أن تكون هناك دالة أو تعبير قياسي يفي بالغرض و يختصر الأمر, لأن استعمال الدالة str_replace سيجعل الأمر طويل
تاريخ البداية: 6 / أبريل / 2012 الساعة 14:31 اخر نشاط: 13 / أبريل / 2012 الساعة 5:2 دالة
2 إجابات
salam alikom
try this
Function enleveaccents($chaine)
    {
     $string= strtr($chaine,
   " ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ",
   "-aaaaaaaaaaaaooooooooooooeeeeeeeecciiiiiiiiuuuuuuuuynn");
     return $string;
    } ;
or this $str = strtr($str, ' ÁÀÂÄÃÅÇÉÈÊËÍÏÎÌÑÓÒÔÖÕÚÙÛÜÝ', '-AAAAAACEEEEEIIIINOOOOOUUUUY'); $str = strtr($str, ' áàâäãåçéèêëíìîïñóòôöõúùûüýÿ', '-aaaaaaceeeeiiiinooooouuuuyy'); Or this
function wd_remove_accents($str, $charset='utf-8')
{
    $str = htmlentities($str, ENT_NOQUOTES, $charset);
    
    $str = preg_replace('#&([A-za-z])(?:acute|cedil|circ|grave|orn|ring|slash|th|tilde|uml);#', '\1', $str);
    $str = preg_replace('#&([A-za-z]{2})(?:lig);#', '\1', $str); // pour les ligatures e.g. 'œ'
    $str = preg_replace('#&[^;]+;#', '', $str); // supprime les autres caractères
    
    return $str;
}

بواسطة: chlieh
منذ: 13 / أبريل / 2012 الساعة 5:2

يمكنك تنظيف النص من اى شىء سوى النص الانجليزى
$string = "some სოფო text"; 
$string = preg_replace('/[^a-z0-9_ ]/i', '', $string); 
اما التحويل ستحتاج عملها يدويا عن طريق التبديل بين مصفوفة البحث ومصفوفة التبديل

بواسطة: MacOS
منذ: 6 / أبريل / 2012 الساعة 14:38

لكن هذه تحذفه أنا أريد فقط استبداله
6 / أبريل / 2012 الساعة 14:44

مافى دالة جاهزة لذلك .. عليك صنعها يدويا باستعمال str_replace
6 / أبريل / 2012 الساعة 14:45

أنشر اجابتك

xهل تريد الاجابة عن هذا السؤال؟ من فضلك سجل دخول او اشترك لتتمكن من الاجابة