المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : String.Replace


ثامر أبو بلقيس
13-02-2015, 10:57 PM
السلام عليكم ورحمة الله وبركاته

أخي أمامي التعبير :
x = "12345"

بدون إطالة أبحث عن استبدال متعدد أي في وقت واحد -إن صح التعبير-
حتى يتم استبدال
1 بــ 2
3 بــ 1
2 بـ 4
4 بـ 5
حيث سينتج : 24155

شكرا مع ملاحظة أن المثال للتوضيح حتى لا يكون الكود المطلوب يحقق فقط
وضعية محددة أي أريد استبدال عام غير مترابط وفق ظروف معطيات المثال :abc_138:

فرح صالحي
14-02-2015, 12:39 AM
موفق بإذن الله ..:abc_091:. لك مني أجمل تحية .

ثامر أبو بلقيس
14-02-2015, 01:56 AM
شكرا أخي :abc_138:

ياسرهتهت
14-02-2015, 12:54 PM
بسم الله الرحمن الرحيم
السلام عليكم ورحمة الله وبركاته
استاذي الكريم
من الواضح ان العملية ليست سهله
في حدود ما هو موجود في String.Replace
واستبدال حرف رقم علامة واحدة فقط
ولا يمكن التعامل مع عنصر واحد فقط مثل الاحاد ، العشرات ، المئات
-----------------------------
والرقم المطلوب استبدالة ليس له قاعدة استبدال
أي لا يمكن الحصول على الناتج المطلوب من عملية معينة


-------
كحل تلفبقي لتعمل مع هذا الرقم

-----------------------------------------------------------------------
result1 = String.Replace("12345", "1", "2", false);
--------------------------22345---------------------------------
result2 = String.Replace(result1, "2", "4", false);
--------------------------44345---------------------------------
result3 = String.Replace(result2, "3", "1", false);
--------------------------44145---------------------------------
result4 = String.Replace(result3, "44", "24", false);
--------------------------24145---------------------------------
result5 = String.Replace(result4, "45", "55", false);
Input.SetText("Input1", result5);


--------------------------24155---------------المطلوب-----------

:abc_152::abc_152::abc_152:

ثامر أبو بلقيس
14-02-2015, 01:07 PM
السلام عليكم ورحمة الله وبركاته

نعم أخي ياسر الموضوع بقدر أهميته بقدر صعوبته

لانك لاحظت أنه لا يتم الاستبدال في وقت واحد حيث عند
اجراء تبديل معين التبديل الذي سيليه سيشمل ما تم استبداله في المرة السابقة
وستنتج استبدالات خاطئة الا في حالتك فإنها صالحة لكن تحت ظروف المثال الموضوع

لذلك أخي ياسر قولك بأن :
الرقم المطلوب استبداله ليس له قاعدة استبدال
أي لا يمكن الحصول على الناتج المطلوب من عملية معينة

:abc_138:صحيح :abc_138:

لكن علينا ايجاد الحلول السريعة:abc_086: و الفعالة :abc_138:

ننتظر محاولات أخرى شكرا أخي :abc_138:
-----------------------------------------------------------------

ثامر أبو بلقيس
15-02-2015, 06:54 PM
ويبقى التساؤل مفتوحا :abc_021:

لن تبق زيارتك من بعيد للموضوع طويلا