وظيفة بديلة محسنة لاستبدال قيم متعددة في جداول بيانات Google
تتيح لك وظيفة SUBSTITUTE في جداول بيانات Google العثور على قيمة نصية معينة واستبدالها في خلية بقيمة أخرى. إذا كنت بحاجة إلى استبدال قيم متعددة في سلسلة بقيم مختلفة، فسوف تحتاج إلى تداخل وظائف SUBSTITUTE المتعددة التي يمكن أن تكون مرهقة.
توفر جداول بيانات Google ميزة مدمجة SUBSTITUTE
وظيفة يمكنها البحث عن نص معين واستبداله في خلية بقيمة أخرى. على سبيل المثال، يمكنك استخدام =SUBSTITUTE("My favorite color is red", "red", "blue")
لاستبدال النص red
في السلسلة مع blue
. ال SUBSTITUTE
الوظيفة حساسة لحالة الأحرف وستحل محل كافة تكرارات نص البحث.
استبدل القيم المتعددة بـ SUBSTITUTE
الآن فكر في سيناريو يتعين عليك فيه استبدال قيم متعددة في سلسلة بقيم مختلفة. على سبيل المثال، إذا كان لديك سلسلة قالب مثل My name is {{name}} and I work at {{company}}
وتريد استبدال {{name}}
بالاسم الحقيقي و {{company}}
مع اسم الشركة.
ال SUBSTITUTE
الدالة ليست مفيدة هنا لأنها يمكن أن تحل محل قيمة واحدة فقط في كل مرة ولكن يمكنك استخدام المتداخلة SUBSTITUTE
وظائف لاستبدال قيم متعددة في خلية واحدة. سيكون هناك واحد SUBSTITUTE
وظيفة لكل قيمة تريد استبدالها.
وظائف بديلة متداخلة
=SUBSTITUTE(
SUBSTITUTE(A1,"{{name}}","Amit"),
"{{company}}","Digital Inspiration")
وظيفة بديلة متعددة لجداول بيانات Google
يعمل الأسلوب المتداخل، ولكن يمكن أن تصبح الصيغة طويلة ومعقدة عندما يتعين عليك استبدال قيم متعددة في خلية واحدة. فيما يلي طريقة أبسط تستخدم Google Apps Script لإنشاء وظيفة مخصصة يمكنها استبدال قيم متعددة في مكالمة واحدة.
=MULTI_SUBSTITUTE(A1, "replace_1", "value_1", "replace_2", "value_2", ... "replace_n", "value_n")
تأخذ الدالة سلسلة الإدخال كوسيطة أولى ثم أزواج من قيم البحث والاستبدال. يحتوي كل زوج على قيمتين – القيمة الأولى هي نص البحث والقيمة الثانية هي النص البديل. ستقوم الوظيفة باستبدال كافة تكرارات نص البحث في سلسلة الإدخال بالنص البديل المقابل.
افتح ورقة Google الخاصة بك، وانتقل إلى الإضافات > Apps Script والصق الكود التالي في محرر البرامج النصية. احفظ البرنامج النصي ويمكنك الآن استخدام MULTI_SUBSTITUTE
تعمل في ورقة Google الخاصة بك لاستبدال قيم متعددة في خلية واحدة.
function MULTI_SUBSTITUTE(text, ...opts) {
for (let i = 0; i < opts.length; i += 2) {
const searchValue = opts[i];
const replaceValue = opts[i + 1];
const regex = new RegExp(searchValue, 'gi');
text = text.replace(regex, replaceValue || '');
}
return text;
}
تستخدم هذه الوظيفة المخصصة تعبيرات عادية لاستبدال كافة تكرارات قيمة البحث في سلسلة الإدخال. ال i
العلم في التعبير العادي يجعل البحث غير حساس لحالة الأحرف على عكس المدمج SUBSTITUTE
وظيفة.
يمكنك أيضًا استخدام وظيفة الاستبدال المتعددة لإنشاء روابط مملوءة مسبقًا لنماذج Google.
اكتشاف المزيد من مرابع التكنولوجيا
اشترك للحصول على أحدث التدوينات المرسلة إلى بريدك الإلكتروني.