GUIDES / Cleaning copied Arabic text
Clean up Arabic text copied from WhatsApp, Word, PDFs and the web
Copied Arabic rarely arrives clean. You may get double spaces and tabs, lines broken in the wrong places, tatweel in headings, a space before every comma, a mix of digit styles and direction marks you cannot see. This guide gives you a fixed routine using the Cleaner's actual option names, explains which options change spelling and should stay off, and shows how to prove at the end that nothing else changed.
Before you start: keep the original, change one thing at a time
Paste the text into Original text in the Cleaner. The tool never edits that box; every option writes to Result, so you can always compare. Still keep the source file or message, because the text is not saved after you close the page.
- Turn on one option, then read the Change summary. It lists each kind of change and how many times it happened.
- Open Compare changes: removed text is struck through and added text underlined. These marks are not copied or downloaded.
- Undo takes you back a step; Reset options starts over.
- The quick actions Diacritics off, Tidy spacing and Digits to 123 replace the current options, so use them first and add other options afterwards.
Three groups change more than layout, so leave them off unless you need them: Normalize letters for search changes spelling, Remove common Arabic diacritics deletes pronunciation, and Line order reshuffles your content.
What you may find in text copied from chats, Word, PDFs and web pages
Each source leaves its own traces. The table lists what you may see after pasting and the option that deals with it. Not every text has all of them.
| Source | What you may see | Option to use |
|---|---|---|
| Chat apps such as WhatsApp | Hidden direction marks at the start or end of messages; asterisks or underscores around words if chat formatting was used | Remove direction controls from result; Find & replace for symbols |
| Word and other word processors | Tabs used as indents, double spaces, non-breaking spaces, soft hyphens, extra empty lines between paragraphs | Tidy spacing; Convert non-breaking spaces; Remove soft hyphens; Line breaks |
| PDF files | Every printed line as a separate line; sometimes presentation forms or reversed words | Join lines with a space; for reversed text see the PDF guide |
| Web pages | Non-breaking spaces, zero-width spaces, runs of blank lines, repeated menu or caption lines | Convert non-breaking spaces; Remove zero-width space & BOM; Keep at most one blank line; Remove exact duplicate lines |
Stray symbols such as asterisks come out with Find & replace: type the symbol in Find, leave Replace with empty and tick Apply replacement to result. Matching is literal, so make sure the text does not need that symbol anywhere else.
*تنبيه:* الاجتماع غدًا
تنبيه: الاجتماع غدًا
Settings: Find & replace · Find: * · Replace with: empty · Apply replacement to result
Open the tool: CleanerIf the source is a Word file, turn on Show/Hide ¶ before copying. Microsoft says it reveals spaces, paragraph marks and tabs, so you see what is coming. For characters no editor shows, use the Invisible text inspector and the invisible characters guide.
The cleanup routine, in order
Work through these steps and glance at the Change summary after each one:
- Spaces. Click the Tidy spacing quick action. It turns on Trim spaces at line edges and Collapse spaces and tabs and clears anything set before, which is why it comes first. If the text has no-break spaces, also tick Convert non-breaking spaces.
- Line breaks. Under Line breaks, choose Keep at most one blank line for most text, or Join lines with a space for a paragraph broken into lines. The next section explains the difference.
- Tatweel. Under Arabic marks, tick Remove tatweel.
- Punctuation. Under More controls › Targeted cleanup, tick Remove spaces before ، ؛ ؟.
- Blank and duplicate lines. For lists only, tick Remove blank lines or Remove exact duplicate lines.
- Digits. Pick one digit style under Convert digits.
- Hidden marks. Open Inspect text direction and tick Remove direction controls from result; tick Remove zero-width space & BOM if the inspector found any.
- Review. Check Compare changes, then use Copy result or Download .txt.
Here is a short announcement pasted from a chat, with the options from steps 1 to 4 plus direction-control removal from step 7:
أهلًا بكم في الــدورة التدريبية ، يبدأTABالتسجيل يوم الأحد هل لديك سؤال ؟RLM
أهلًا بكم في الدورة التدريبية، يبدأ التسجيل يوم الأحد هل لديك سؤال؟
Settings: Tidy spacing · Keep at most one blank line · Remove tatweel · Remove spaces before ، ؛ ؟ · Remove direction controls from result
Open the tool: CleanerSpaces at the line edges are gone, the double space and the tab are single spaces, and three blank lines became one. The tatweel in «الــدورة» is removed, so are the spaces before the comma and the question mark, and so is the hidden mark at the end. The change summary counts each fix, so you can confirm nothing else was touched.
Line breaks: one blank line or joined lines
Line breaks offers three choices: Keep all line breaks (the default), Keep at most one blank line and Join lines with a space.
Keep at most one blank line shrinks any run of empty lines to a single one and leaves ordinary line breaks alone. It suits chats, articles and documents.
الفقرة الأولى. الفقرة الثانية. الفقرة الثالثة.
الفقرة الأولى. الفقرة الثانية. الفقرة الثالثة.
Settings: Line breaks · Keep at most one blank line
Open the tool: CleanerJoin lines with a space removes every line break, blank lines included, and puts one space in its place. That is what a paragraph split into short lines by a PDF or an email needs, but it also merges separate paragraphs:
يتناول هذا التقرير نتائج العام الماضي. وتعرض الفقرة الثانية خطة العام المقبل.
يتناول هذا التقرير نتائج العام الماضي. وتعرض الفقرة الثانية خطة العام المقبل.
Settings: Line breaks · Join lines with a space
Open the tool: CleanerSo join one paragraph at a time: paste it, join, copy, then move to the next. Or join everything and press Enter where each paragraph should start. Do not use Remove blank lines on paragraphs, because it deletes the empty line that separates them. For poems, addresses and subtitles, keep all line breaks.
Tatweel, punctuation and mixed digits
Tatweel (ـ, U+0640) stretches the joint between letters, as in «أهــلاً». Remove tatweel deletes every one in the text:
أهــلاً وسهــلاً بكم
أهلاً وسهلاً بكم
Settings: Arabic marks · Remove tatweel
Open the tool: CleanerUnicode notes that tatweel can also carry diacritics when there is no base letter, and that some Quranic texts use it with a hamza. Do not run this option on Quranic or carefully vocalized text without checking each word.
Remove spaces before ، ؛ ؟ handles exactly those three marks. It leaves a space before a full stop or colon and does not add a space after the mark; fix those with Find & replace.
When digits are mixed, choose one style for the whole text under Convert digits: Keep original digits, Arabic-Indic, Extended Arabic-Indic (used for Persian and Urdu) or Western. The Digits to 123 quick action picks Western and protects links. If you convert to Arabic-Indic, tick Protect detected links & emails during digit conversion so addresses keep working:
الكمية 12 قطعة، والمقاس ۳۸، والسعر ٧٫٥٠٠ د.ك الرابط: www.example.com/item/42
الكمية ١٢ قطعة، والمقاس ٣٨، والسعر ٧٫٥٠٠ د.ك الرابط: www.example.com/item/42
Settings: Convert digits · Arabic-Indic · Protect detected links & emails during digit conversion
Open the tool: CleanerDecimal separators stay as they are, so the Arabic decimal separator ٫ does not become a full stop when you switch to Western digits. Change it with Find & replace if needed. The Arabic numerals guide covers digit choices in depth.
Blank and duplicate lines in lists
For lists of names, products or keywords, More controls › Line tools has Remove blank lines and Remove exact duplicate lines, which keeps the first occurrence. Matching is exact, so a trailing space makes a line different:
أحمد سارة أحمد سارة محمد
أحمد سارة سارة محمد
Settings: More controls · Remove blank lines · Remove exact duplicate lines
Open the tool: Cleaner«سارة» survives twice because the second copy ends with a space. Add Trim spaces at line edges and every duplicate goes. The Removed lines panel lists the first 100 removed lines with their line numbers.
For other rules, use Lines: tick Remove blank lines and Ignore edge whitespace for matching, and set Line duplicates to Keep first. Matching then ignores the stray space while the kept lines stay exactly as they were:
أحمد سارة أحمد سارة محمد
أحمد سارة محمد
Settings: Lines · Remove blank lines · Ignore edge whitespace for matching · Line duplicates: Keep first
Open the tool: LinesLines also offers Keep last and Only unique, and its removal report downloads as CSV.
Options that change spelling: leave them off
Normalize letters for search, under More controls, holds four options: أ إ آ → ا, ى → ي, ة → ه and Persian ی ک → Arabic ي ك. The tool itself warns that they change spelling. The first three exist to build search keys and match lists, not to produce text people will read:
ذهبتُ إلى المدرسة الأولى
ذهبتُ الي المدرسه الاولي
Settings: Normalize letters for search · أ إ آ → ا · ى → ي · ة → ه
Open the tool: Cleaner«إلى» became «الي», «المدرسة» became «المدرسه» and «الأولى» became «الاولي»: all misspellings in standard Arabic. If you need search-ready text, keep it as a second copy and read the search normalization guide. The Persian-letters option is different: it corrects Arabic typed on a Persian keyboard and must not be used on Persian text (see Persian and Arabic letters). Remove common Arabic diacritics also helps search but strips vowels from teaching material, poetry and names; read removing Arabic diacritics first.
Final check: compare and proof
Compare changes is enough for short texts. For a stricter check, open Compare and paste the original into First text · A and the result into Second text · B. Then tick only the comparison options that match what you meant to change, such as Ignore tatweel and Normalize ordinary spaces. If the two texts now match, the cleanup changed nothing else:
أهلًا بكم في الــدورة التدريبية
أهلًا بكم في الدورة التدريبية
The texts match after the comparison options.
أهلًا بكم في الدورة التدريبية أهلًا بكم في الدورة التدريبية
Text as compared
Settings: Compare · Ignore tatweel · Normalize ordinary spaces
Open the tool: CompareComparison options never change the originals. Compare accepts up to 5,000 text units per text, so check long documents in parts.
Finally, open Type proof & export below the editor. Choose Noto Naskh Arabic or Readex Pro, leave the direction on Auto per paragraph, and read a few lines that mix Arabic, English and numbers. Then download the text as .txt, or use Download HTML with fonts for a page that is ready to print.
Frequently asked questions
Which options are safe on any text?
The spacing options, Keep at most one blank line, Remove spaces before ، ؛ ؟ and Remove zero-width space & BOM. Tatweel removal is safe outside Quranic and carefully vocalized text. Letter normalization and diacritic removal change the words themselves.
Why is there still a space at the start of a line?
A hidden direction mark sat in front of the spaces. The Cleaner trims line edges before it removes direction marks, so it cannot see spaces behind a mark. Copy the result, paste it into Original text, and the same options remove the space.
Can I clean several files at once?
Yes. Set your options in the Cleaner, open Batch files, choose Current cleaner settings and select up to 20 UTF-8 .txt files. The results download as a ZIP.
Should I remove diacritics while cleaning?
Only if you need text for search or for a system that rejects vowel marks. Diacritics carry pronunciation, and nothing puts them back automatically. Always keep the vocalized copy; see removing Arabic diacritics.
Is my text saved or uploaded?
No. Processing happens in your browser and the text is not saved after you close the page, so keep your own copy. See the privacy page for details.
Tools used in this guide
Sources
We checked these pages when writing and updating this guide.
Unicode code chart: Arabic (U+0600–U+06FF), tatweel annotation ↗The Unicode Standard, chapter 9: West Asia-I (Arabic, tatweel) ↗Unicode code chart: Latin-1 Supplement (no-break space, soft hyphen) ↗Unicode Standard Annex #9: Unicode Bidirectional Algorithm ↗Microsoft Support: Show or hide tab marks in Word ↗