دمج الأسطر بفاصل تختاره
تصبح ثلاثة أسطر فيها apple وbanana وcherry سطرًا واحدًا هو apple, banana, cherry. تُتخطى الأسطر الفارغة افتراضيًا، وتُزال المسافات حول كل سطر، ويمكنك استخدام خط عمودي أو فاصلة منقوطة أو مسافة جدولة أو لا شيء. مجانية في متصفحك.
- مجاني
- يعمل في متصفحك
- دون تسجيل
- بياناتك لا تغادر جهازك
شغّل الأداة مجانًا
مثال محلول
- النص
- apple banana cherry
- النص
- apple, banana, cherry
- الأصلي
- apple banana cherry
- الفاصل
- ,
- الكمية
- 3
دمج الأسطر بفاصل هو العمل اليومي لتحويل قائمة عمودية إلى سلسلة واحدة في السطر: وسوم لخلية CSV، وبريد لحقل نسخة مخفية، ورموز SKU لوسيط استعلام، أو أسماء لعنوان مفصول بفواصل. تقرأ هذه الأداة النص متعدد الأسطر، وتقسمه على فواصل Windows وUnix وMac الكلاسيكي وUnicode، وتتجاوز الصفوف الفارغة إن رغبتم، ثم تدمج الأسطر المتبقية بالفاصل الذي تختارونه — فاصلة ومسافة افتراضيًا، أو شريطًا عموديًا أو فاصلة منقوطة أو جدولة أو أي لصق آخر. بخلاف الأدوات التي تستبدل كل فاصل بمسافة فحسب، تعامل كل سطر عنصر قائمة وتُجري دمجًا حقيقيًا بأسلوب Array.join حتى لا تصبح الصفوف الفارغة فواصل زائدة إلا إذا طلبتم ذلك. تُرجع الاستجابة نتيجة السطر الواحد والفاصل المستخدم وعدد الأسطر المرئية وعدد القطع المدمجة وصدى اللصق الأصلي.
كيف يعمل دمج الأسطر بفاصل فعلًا
دمج الأسطر بفاصل تحويل قائمة، لا فكّ التفاف فقرة. الفاصل الافتراضي فاصلة تتبعها مسافة، وهو ما يبحث عنه معظم الناس عند دمج الأسطر بفاصلة أو تحويل عمود إلى وسوم في السطر. يمكنكم تمرير أي سلسلة: فاصلة عارية، أو شريط بمسافات، أو فاصلة منقوطة، أو جدولة، أو الكلمة AND، أو حتى سلسلة فارغة إن أردتم أن تتلامس القطع.
ثم يقسم المحرك اللصق على كل نهاية سطر شائعة. يُعامل CRLF في Windows قاطعًا واحدًا حتى لا يولّد ملف حاسوب رمزًا فارغًا شبحًا بين إرجاع الحاملة وتغذية السطر. يفتح LF المنفرد وCR المنفرد وnext-line في Unicode وفاصل السطر وفاصل الفقرة كلٌّ منها عنصرًا جديدًا.
يُشذَّب كل عنصر بعد ذلك حتى لا تتسرب مسافات عمود ملصوق عارضة إلى السلسلة المدمجة. أخيرًا تُسلسل القطع المتبقية باللصق المختار وتُرجع في سطر واحد.
أين تكسب أداة دمج الأسطر بفاصل موضعها
استدعوا الأداة المجانية في المتصفح لدمج الأسطر بفاصل عندما تلصقون عمودًا من جدول، أو قائمة بريد من تذكرة، أو كومة وسوم من نظام CMS، أو دفعة رموز SKU من تصدير مستودع وتحتاجون سلسلة واحدة في السطر لحقل نموذج أو وسيط استعلام أو خلية CSV. تغطي هذه الصفحة عمليات البحث دمج الأسطر بفاصل ودمج الأسطر بفاصلة وتحويل قائمة إلى نص مفصول. ليست النية نفسها إزالة فواصل الأسطر التي تفك التفاف فقرة باستبدال كل فاصل بمسافة حتى تبقى الجمل مقروءة.
هنا كل سطر عنصر قائمة والفاصل من اختياركم. وليست ترتيب أسطر ولا إزالة تكرار أسطر ولا عدّ أسطر — فتلك تبقي الشكل العمودي. مسار نمطي يلصق عمود وسوم منتج ويترك فاصل الفاصلة والمسافة الافتراضي وينسخ النص المدمج إلى تغذية تاجر.
مسار آخر يضبط separator على شريط أو فاصلة منقوطة ليوافق مستوردًا قديمًا. اقرنوا هذه النهاية بأدوات تشذيب أو ترتيب في خطوة لاحقة إن احتجتم نظافة إضافية، لكن أبقوا دمج-الأسطر-بفاصل صفحة مستقلة حتى لا تختلط استعلام القائمة المفصولة بفك التفاف الفقرة.
حالات الاستخدام
تحويل عمود أسماء أو بريد إلى حقل واحد
الصقوا قائمة عمودية من العناوين أو أسماء العرض وانسخوا سطرًا واحدًا مفصولًا بفواصل إلى مربع نسخة مخفية أو حقل CRM أو نموذج دعوة.
طي الوسوم ورموز SKU للتغذيات والاستعلامات
ادمجوا كومة وسوم منتج أو رموز SKU للمستودع في خلية مفصولة واحدة لتغذية تاجر أو وسيط URL أو قالب استيراد.
بناء قوائم في السطر للإعدادات وجمل SQL IN
حوّلوا عمودًا ملصوقًا من المعرّفات إلى قائمة أشرطة أو فواصل منقوطة أو فواصل يستطيع ملف إعداد أو استعلام استهلاكها بلا تحرير إضافي.
الأسئلة الشائعة
ما الفاصل الذي تستخدمه هذه الأداة افتراضيًا؟
فاصلة تتبعها مسافة. استبدلوا separator بأي سلسلة — فاصلة وحدها أو شريط أو فاصلة منقوطة أو جدولة أو فارغ للدمج الصلب بلا لصق.
هل يتخطى دمج الأسطر الصفوف الفارغة؟
اضبطوها على false للإبقاء على رموز فارغة بين فواصل متتالية.
بم يختلف هذا عن إزالة فواصل الأسطر؟
إزالة الفواصل تفك التفاف فقرة باستبدال كل فاصل بمسافة. دمج الأسطر بفاصل يعامل كل سطر عنصر قائمة ويدمج تلك العناصر بالفاصل الذي تختارونه.
أي نهايات أسطر تُتعرَّف؟
CRLF في Windows (قاطع واحد) وLF في Unix وCR الكلاسيكي في Mac وnext-line في Unicode وفاصل السطر وفاصل الفقرة. يُشذَّب كل سطر قبل الدمج.
هل تُزال المسافات في بداية كل سطر ونهايته؟
نعم، يُقص كل سطر قبل الدمج حتى لا تتسرب المسافات العارضة من عمود ملصوق إلى النتيجة. أما المسافات داخل السطر فتبقى كما هي.
أدوات ذات صلة
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/str/join-lines \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"apple\nbanana\ncherry"}'const res = await fetch("https://api.kit.forhosting.com/str/join-lines", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "apple\nbanana\ncherry"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/str/join-lines",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "apple\nbanana\ncherry"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/str/join-lines", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"apple\\nbanana\\ncherry"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"apple\nbanana\ncherry"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/str/join-lines", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"text": "apple\nbanana\ncherry"
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "str.join_lines",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الحدود
max_chars | 100000 |
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |
ملاحظات تقنية
يُرفض الإدخال الفارغ بـ invalid_input. تكلف طلبات API الناجحة $0.002 لكل عنصر.
كيف يعمل دمج الأسطر بفاصل فعلًا
يقرأ المحرك أولًا الحقل الإلزامي text وضابطين اختياريين: separator وskip_empty. عندما تكون skip_empty قيمتها true، وهو الافتراضي، تُسقط الصفوف الفارغة أو المؤلفة من مسافات فقط قبل الدمج، فتصير قائمة ذات فجوات تفاح، موز، كرز لا تفاح، ، موز. عندما تكون skip_empty قيمتها false تبقى الرموز الفارغة، وهو عقد Array.join نفسه في JavaScript: قاطعان متتاليان يصيران فاصلين متتاليين.
عقد الإدخال وشكل الاستجابة ورفض الإدخال الفارغ
الفاصل الفارغ جائز ويدمج القطع بلا أحرف بينها. لصق سطر واحد بلا فواصل يُرجع ذلك السطر دون تغيير وcount واحد. ثبّتوا هذه الحقول في التكامل المستمر حتى لا يغيّر إعادة هيكلة لاحقة معاملة CRLF أو لصق الفاصلة والمسافة الافتراضي في صمت. أرسلوا جسم JSON مع حقل السلسلة الإلزامي text مساويًا للعينة متعددة الأسطر غير الفارغة التي تريدون تسطيحها. تُقبل الأسماء البديلة input وvalue وs وcontent وbody وlines عندما يستخدم مولّد نماذج أو عميل قديم تلك الأسماء. غياب text أو قيمة ليست سلسلة أو سلسلة طولها صفر تثير invalid_input وتسمّي الحقل؛ ولا تُحسب تلك الإخفاقات على API المدفوعة مسبقًا. separator الاختياري افتراضه فاصلة ومسافة؛ وتعمل الأسماء البديلة sep وdelim وdelimiter وjoiner وglue بالمثل. تفشل الفواصل الطويلة جدًا فوق السقف الموثَّق في التحقق حتى لا ينفخ طلب واحد ذاكرة Worker. skip_empty الاختياري منطقي افتراضه true؛ وتُقبل الأسماء البديلة skip_blanks وdrop_empty وignore_empty، وتُحوَّل السلاسل true وfalse و1 و0 كما يُتوقع. عند النجاح تتضمن الاستجابة text بوصفه السطر المدمج الواحد الجاهز للنسخ، وoriginal صدى للإدخال لشاشات قبل وبعد، وseparator بوصفه اللصق المستخدم فعلًا بعد الافتراضات، وcount عدد القطع المدمجة، وline_count عدد المقاطع التي أنتجها التقسيم قبل تجاوز الفراغات، وskip_empty العلم الفعلي، وmethod دائمًا join_lines حتى يتفرع الرمز اللاحق دون شمّ الأشكال. لا يضيف سطر جديد ختامي مع skip_empty بقيمة true فاصلًا متدليًا.
أين تكسب أداة دمج الأسطر بفاصل موضعها
استخدموا واجهة KIT المدفوعة مسبقًا عندما يحتاج مسار أو إضافة CMS أو عميل جوّال العقد نفسه تحت رصيد بمقدار $0.002 لكل عنصر ناجح؛ وإخفاقات التحقق لا تستهلك الرصيد أبدًا بعد رفض المحرك. مسار ثالث يضع skip_empty على false عندما يجب أن تبقى الخانات الفارغة في عمود المصدر رموزًا فارغة بين الفواصل.
أسئلة تقنية
كم يكلف دمج الأسطر بفاصل؟
أداة المتصفح مجانية وتعمل محليًا. تستخدم طلبات API رصيد KIT المدفوع مسبقًا بمقدار $0.002 لكل عنصر ناجح؛ ولا يُحاسب الإدخال غير الصالح.