Arabic Text Standardize:

Standardize Arabic text just like rules followed in magazines and newspapers like spaces before and after punctuations, brackets and units etc ...


Example Output 1:

Origenal:

هذا نص عربي ، و فيه علامات ترقيم بحاجة إلى ضبط و معايرة !و كذلك نصوص( بين أقواس )أو حتى مؤطرة"بإشارات إقتباس "أو- علامات إعتراض -الخ......
لذا ستكون هذه المكتبة أداة و وسيلة لمعالجة مثل هكذا حالات، بما فيها الواحدات 1 Kg أو مثلا MB 16 وسواها حتى النسب المؤية مثل 20% أو %50 وهكذا ...

Standard:

هذا نص عربي، وفيه علامات ترقيم بحاجة إلى ضبط ومعايرة! وكذلك نصوص (بين أقواس) أو حتى مؤطرة "بإشارات إقتباس" أو -علامات إعتراض- الخ...
لذا ستكون هذه المكتبة أداة و وسيلة لمعالجة مثل هكذا حالات، بما فيها الواحدات 1 Kg أو مثلا 16 MB وسواها حتى النسب المؤية مثل %20 أو %50 وهكذا...


Example Code 1:

<?php
    $Arabic 
= new \ArPHP\I18N\Arabic();
    
    
$content = <<<END
هذا نص عربي ، و فيه علامات ترقيم بحاجة إلى ضبط و معايرة !و كذلك نصوص( بين 
أقواس )أو حتى مؤطرة"بإشارات إقتباس "أو- علامات إعتراض -الخ......
<br>
لذا ستكون هذه المكتبة أداة و وسيلة لمعالجة مثل هكذا حالات، بما فيها الواحدات 1 
Kg أو مثلا MB 16 وسواها حتى النسب المؤية مثل 20% أو %50 وهكذا ...
END;

    
$str $Arabic->standard($content);
    
    echo 
'<b>Origenal:</b>';
    echo 
'<p dir="rtl" align="justify">';
    echo 
$content '</p>';
    
    echo 
'<b>Standard:</b>';
    echo 
'<p dir="rtl" align="justify">';
    echo 
$str '</p>';

Related Documentation: standard

Example Output 2:

Origenal

إذا رُمتَ أنْ تَحيا سَليماً مِن الأذى ... وَ دينُكَ مَوفورٌ وعِرْضُكَ صَيِّنُ
لِســـــــانَكَ لا تَذكُرْ بِهِ عَورَةَ امرئٍ ... فَكُلُّكَ عَوراتٌ وللنّاسِ ألسُنُ


Strip All Harakat

إذا رمت أن تحيا سليما من الأذى ... و دينك موفور وعرضك صين
لسانك لا تذكر به عورة امرئ ... فكلك عورات وللناس ألسن


Strip Harakat but Tatweel, Tanwen, Shadda, and Last Harakat

إذا رمتَ أنْ تحيا سليماً من الأذى ... وَ دينكَ موفورٌ وعرضكَ صيّنُ
لســـــــانكَ لا تذكرْ بهِ عورةَ امرئٍ ... فكلّكَ عوراتٌ وللنّاسِ ألسنُ


Strip Last Harakat Only (including Tanwen)

إذا رُمت أن تَحيا سَليما مِن الأذى ... و دينُك مَوفور وعِرْضُك صَيِّن
لِســـــــانَك لا تَذكُر بِه عَورَة امرئ ... فَكُلُّك عَورات وللنّاس ألسُن


Example Code 2:

<?php
    $Arabic 
= new \ArPHP\I18N\Arabic();
    
    
$content = <<<END
إذا رُمتَ أنْ تَحيا سَليماً مِن الأذى
...
وَ دينُكَ مَوفورٌ وعِرْضُكَ صَيِّنُ
<br />
لِســـــــانَكَ لا تَذكُرْ بِهِ عَورَةَ امرئٍ
...
فَكُلُّكَ عَوراتٌ وللنّاسِ ألسُنُ
END;
    
    echo 
'<b>Origenal</b>';
    echo 
'<p dir="rtl" align="justify">';
    echo 
$content '</p>';

    
$str1 $Arabic->stripHarakat($content);
    
    echo 
'<hr /><b>Strip All Harakat</b>';
    echo 
'<p dir="rtl" align="justify">';
    echo 
$str1 '</p>';

    
$str2 $Arabic->stripHarakat($contentFALSEFALSEFALSEFALSE);
    
    echo 
'<hr /><b>Strip Harakat but Tatweel, Tanwen, Shadda, and Last Harakat</b>';
    echo 
'<p dir="rtl" align="justify">';
    echo 
$str2 '</p>';

    
$str2 $Arabic->stripHarakat($contentFALSETRUEFALSETRUEFALSE);
    
    echo 
'<hr /><b>Strip Last Harakat Only (including Tanwen)</b>';
    echo 
'<p dir="rtl" align="justify">';
    echo 
$str2 '</p>';

Related Documentation: stripHarakat

Example Output 3:

Origenal

هل تعلم أن النقاط تم إختراعها للعجم وليس للعرب، حتى أن العرب قديما كانوا لا يستخدمون النقاط وأنت كذلك يمكنك أن تقرأ مقاطع كاملة بدون نقاط كما كان يفعل الأسلاف، وكانوا يفهمون الكلمات من سياق الجملة وأبسط مثال على ذلك أنك تقرأ هذا المقطع من دون مشاكل.


String With No Dots Nor Hamza

هل ٮعلم اں الٮٯاط ٮم احٮراعها للعحم ولىس للعرٮ، حٮى اں العرٮ ٯدىما كاٮوا لا ىسٮحدموں الٮٯاط واٮٮ كدلک ىمكٮک اں ٮٯرا مٯاطع كامله ٮدوں ٮٯاط كما كاں ىڡعل الاسلاڡ، وكاٮوا ىڡهموں الكلماٮ مں سىاٯ الحمله واٮسط مٮال على دلک اٮک ٮٯرا هدا المٯطع مں دوں مساكل.


Example Code 3:

<?php
    $Arabic 
= new \ArPHP\I18N\Arabic();
    
    
$content = <<<END
هل تعلم أن النقاط تم إختراعها للعجم وليس للعرب، 
حتى أن العرب قديما كانوا لا يستخدمون النقاط 
وأنت كذلك يمكنك أن تقرأ مقاطع كاملة بدون نقاط كما كان يفعل الأسلاف،
وكانوا يفهمون الكلمات من سياق الجملة 
وأبسط مثال على ذلك أنك تقرأ هذا المقطع من دون مشاكل.
END;

    echo 
'<b>Origenal</b>';
    echo 
'<p dir="rtl" align="justify">';
    echo 
$content '</p>';

    echo 
'<hr /><b>String With No Dots Nor Hamza</b>';
    echo 
'<p dir="rtl" align="justify">';
    echo 
$Arabic->noDots($content) . '</p>';

Related Documentation: noDots

Example Output 4:

Origenal Text

آسِفـــةٌ لا تَنَبُّؤْ 456


Normalized Text

اسفه لا تنبء 456
اسفه لا تنبء ٤٥٦


Example Code 4:

<?php
    $Arabic 
= new \ArPHP\I18N\Arabic();
    
    
$text 'آسِفـــةٌ لا تَنَبُّؤْ 456';

    
$Arabic->setNorm('stripTatweel'true)
           ->
setNorm('stripTanween'true)
           ->
setNorm('stripShadda'true)
           ->
setNorm('stripLastHarakat'true)
           ->
setNorm('stripWordHarakat'true)
           ->
setNorm('normaliseLamAlef'true)
           ->
setNorm('normaliseAlef'true)
           ->
setNorm('normaliseHamza'true)
           ->
setNorm('normaliseTaa'true);

    
# you can also use all form like the following example
    # $Arabic->setNorm('all', true)->setNorm('normaliseHamza', false)->setNorm('normaliseTaa', false);

    
echo '<b>Origenal Text</b>';
    echo 
'<p dir="rtl" align="justify">';
    echo 
$text '</p>';

    echo 
'<hr /><b>Normalized Text</b>';
    echo 
'<p dir="rtl" align="justify">';
    echo 
$Arabic->arNormalizeText($text) . '<br/>';
    echo 
$Arabic->arNormalizeText($text'Hindu') . '</p>';    

Related Documentation: setNorm, arNormalizeText