"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيفية التحقق مما إذا كانت السلسلة تحتوي على أي من السلاسل الفرعية من صفيف في JavaScript؟

كيفية التحقق مما إذا كانت السلسلة تحتوي على أي من السلاسل الفرعية من صفيف في JavaScript؟

تم النشر بتاريخ 2024-11-06
تصفح:803

How to Check if a String Contains Any of the Substrings from an Array in JavaScript?

البحث عن سلاسل فرعية في سلسلة باستخدام مصفوفات جافا سكريبت

لتحديد ما إذا كانت السلسلة تحتوي على أي من السلاسل الفرعية من مصفوفة، توفر جافا سكريبت أساليب مرنة .

Array Some Method

تتكرر طريقة some عبر مصفوفة، مما يوفر وظيفة رد اتصال لاختبار كل عنصر. للتحقق من السلاسل الفرعية، استخدم طريقة IndexOf() للبحث عن كل عنصر مصفوفة داخل السلسلة:

if (substrings.some(function(v) { return str.indexOf(v) >= 0 })) { // هناك سلسلة فرعية واحدة على الأقل متطابقة
if (substrings.some(function(v) { return str.indexOf(v) >= 0; })) {
    // There's at least one substring match
}
التعبير العادي

توفر التعبيرات العادية طريقة قوية لمطابقة أنماط النص. للبحث عن أي سلسلة فرعية في المصفوفة داخل السلسلة، قم بإنشاء regex مع جميع السلاسل الفرعية كخيارات بديلة واستخدم طريقة test():

const regex = new RegExp(substrings.join("| ")); إذا (regex.test(str)) { // تطابق سلسلة فرعية واحدة على الأقل

const regex = new RegExp(substrings.join("|"));
if (regex.test(str)) {
    // At least one substring matches
}

لنفكر في مجموعة من السلاسل الفرعية:

const substrings = ["one"، "two"، "three" "];

const substrings = ["one", "two", "three"];
]

const str = "تتضمن هذه السلسلة \"واحد\"."; // استخدام المصفوفة بطريقة ما const someMethodMatch = substrings.some(v => str.includes(v)); // استخدام التعبير العادي const regexMatch = str.match(new RegExp(substrings.join("|")));

const str = "This string includes \"one\".";

// Using array some method
const someMethodMatch = substrings.some(v => str.includes(v));

// Using regular expression
const regexMatch = str.match(new RegExp(substrings.join("|")));

const str = " لا تحتوي هذه السلسلة على أي سلاسل فرعية."; // استخدام المصفوفة بطريقة ما const someMethodNoMatch = substrings.some(v => str.includes(v)); // استخدام التعبير العادي const regexNoMatch = str.match(new RegExp(substrings.join("|")));

const str = "This string doesn't have any substrings.";

// Using array some method
const someMethodNoMatch = substrings.some(v => str.includes(v));

// Using regular expression
const regexNoMatch = str.match(new RegExp(substrings.join("|")));

اختبار الطريقة سلسلة مع مطابقة someMethodMatch = صحيحsomeMethodNoMatch = falseالتعبير العاديregexMatch = trueregexNoMatch = null
سلسلة بدون مطابقة صفيف بعض
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3