URLEncoder.tools is a free online URL encoder and decoder that converts special characters in URLs to their percent-encoded equivalents as defined by RFC 3986. It supports five encoding modes: Standard URL Encode (encodeURIComponent), Full URL Encode (encodeURI), URL Decode, Batch Mode for multiple URLs, and Form Data Encode. All processing happens client-side in the browser with zero data sent to any server. The tool supports 12 languages and works with Unicode characters including emoji.

أداة مجانية لترميز وفك ترميز عناوين URL عبر الإنترنت

قم بترميز أو فك ترميز أي سلسلة URL فورًا — متوافق مع RFC 3986، يعمل في متصفحك، لا يتم إرسال بيانات إلى الخوادم.

100% على جانب العميللا حاجة لتسجيل الدخولمتوافق مع GDPR
الأحرف: 0التسلسلات المرمزة: 0

تلميح: اضغط Ctrl+Enter للترميز، Esc للمسح

أدوات ذات صلة

ما هو ترميز URL؟

URL encoding (also called percent-encoding) is a method of converting special characters in a URL into a format that can be safely transmitted over the internet. It replaces unsafe ASCII characters with a percent sign (%) followed by two hexadecimal digits representing the character's byte value, as defined by RFC 3986.

For example, a space character becomes %20, an ampersand (&) becomes %26, and a question mark (?) becomes %3F. The unreserved characters that do not require encoding are: A-Z, a-z, 0-9, hyphen (-), underscore (_), period (.), and tilde (~).

كيف يعمل ترميز URL؟

URL encoding works by converting each character to its UTF-8 byte sequence, then representing each byte as a percent sign followed by two hexadecimal digits. Single-byte ASCII characters like a space produce one percent-encoded triplet (%20), while multi-byte Unicode characters produce multiple triplets.

RFC 3986 divides characters into two groups: reserved characters (: / ? # [ ] @ ! $ & ' ( ) * + , ; =) that have special meaning in URL syntax, and unreserved characters (A-Z, a-z, 0-9, -, _, ., ~) that can appear in URLs without encoding. Reserved characters must be percent-encoded when used as data rather than as delimiters.

متى تحتاج إلى ترميز URL؟

تحتاج إلى ترميز عناوين URL عندما تحتوي على أحرف خاصة مثل المسافات وعلامات العطف (&) وعلامات المساواة (=) أو أحرف غير ASCII. تشمل السيناريوهات الشائعة: بناء سلاسل الاستعلام لاستدعاءات API، وترميز بيانات النماذج للإرسال، ومشاركة عناوين URL التي تحتوي على أحرف خاصة في رسائل البريد الإلكتروني أو الرسائل، والعمل مع أسماء النطاقات الدولية.

Query Strings & API Calls

When building REST API requests, query parameters containing special characters like &, =, or spaces must be percent-encoded to avoid breaking the URL structure.

Form Data Submission

HTML forms submitted via GET method encode field values as query parameters. Spaces become + or %20, and special characters are percent-encoded.

Email & Messaging Links

URLs shared in emails or chat messages often contain special characters that need encoding to remain clickable and functional.

JavaScript fetch() & AJAX

When constructing URLs dynamically in JavaScript, always use encodeURIComponent() for parameter values to prevent XSS and malformed requests.

الأحرف الشائعة المرمزة في URL

CharacterEncodedUnicode
(space)%20U+0020
!%21U+0021
#%23U+0023
$%24U+0024
&%26U+0026
+%2BU+002B
,%2CU+002C
/%2FU+002F
:%3AU+003A
;%3BU+003B
=%3DU+003D
?%3FU+003F
@%40U+0040
[%5BU+005B
]%5DU+005D

ترميز URL في لغات البرمجة

JavaScript

encodeURIComponent('hello world')
// → "hello%20world"

decodeURIComponent('hello%20world')
// → "hello world"

encodeURI('https://example.com/search?q=hello world')
// → "https://example.com/search?q=hello%20world"

Python

from urllib.parse import quote, unquote

quote('hello world')
# → "hello%20world"

unquote('hello%20world')
# → "hello world"

PHP

urlencode('hello world');
// → "hello+world"

rawurlencode('hello world');
// → "hello%20world"

urldecode('hello%20world');
// → "hello world"

Java

URLEncoder.encode("hello world", "UTF-8");
// → "hello+world"

URLDecoder.decode("hello+world", "UTF-8");
// → "hello world"

C#

Uri.EscapeDataString("hello world");
// → "hello%20world"

Uri.UnescapeDataString("hello%20world");
// → "hello world"

Ruby

require 'uri'

URI.encode_www_form_component('hello world')
# → "hello+world"

URI.decode_www_form_component('hello+world')
# → "hello world"

الأسئلة الشائعة

ما الأحرف التي تحتاج إلى ترميز URL؟

تشمل الأحرف التي تحتاج إلى ترميز URL المسافات والأحرف الخاصة مثل &، =، ?، #، % وجميع الأحرف غير ASCII. الأحرف غير المحجوزة التي لا تحتاج إلى ترميز هي: A-Z، a-z، 0-9، الشرطة (-)، الشرطة السفلية (_)، النقطة (.)، والتلدة (~).

ما الفرق بين %20 و + في URL؟

%20 يمثل مسافة في مسار URL وهو الترميز النسبي القياسي. علامة + تمثل مسافة فقط في معلمات سلسلة الاستعلام عند استخدام تنسيق application/x-www-form-urlencoded.

هل ترميز URL هو نفسه ترميز Base64؟

لا. ترميز URL يحول الأحرف الخاصة في عناوين URL إلى تنسيق ستعشري %XX. ترميز Base64 يحول البيانات الثنائية إلى سلسلة نصية باستخدام 64 حرف ASCII قابل للطباعة. هما يخدمان أغراضًا مختلفة تمامًا.

كيف أفك ترميز URL في JavaScript؟

استخدم decodeURIComponent() لفك ترميز مكون URL، أو decodeURI() لفك ترميز عنوان URL كامل. مثال: decodeURIComponent('%20') يعيد حرف مسافة.

ما هو RFC 3986؟

RFC 3986 هو المعيار الذي يحدد صيغة معرفات الموارد الموحدة (URIs). يحدد الأحرف المسموح بها في عناوين URL وكيفية ترميز الأحرف الخاصة بالنسبة المئوية.

لماذا يحتوي عنوان URL الخاص بي على %3D و %26؟

%3D هو الشكل المرمز لعلامة المساواة (=) و %26 هو الشكل المرمز لعلامة العطف (&). هذه الأحرف لها معنى خاص في عناوين URL، لذلك يجب ترميزها عند استخدامها كقيم بيانات.

تعرف على المزيد حول ترميز URL

اقرأ أدلتنا المتعمقة والدروس التعليمية حول أفضل ممارسات ترميز URL.

زيارة مدونتنا