2.9 KiB
id, title, challengeType, forumTopicId, dashedName
| id | title | challengeType | forumTopicId | dashedName |
|---|---|---|---|---|
| aaa48de84e1ecc7c742e1124 | مدقق لمعاكس المقطع النصي | 5 | 16004 | palindrome-checker |
--description--
قم بإرجاع true إذا كان الـ string المعطي هو palindrome. خلاف ذلك، قم بإرجاع false.
palindrome هي كلمة أو جملة يتم تهجئتها بنفس الطريقة من بدايتها او من نهايتها ، مع تجاهل علامات الترقيم، والحالة، والمسافات.
ملاحظة: ستحتاج إلى إزالة جميع الأحرف غير الأبجدية والرقمية (علامات الترقيم، المساحات والرموز) وتحويل كل شيء إلى نفس الحالة (lower او upper case) من أجل التحقق من وجود الـ palindromes.
سنمرر strings بتنسيقات مختلفة ، مثل racecar و RaceCar و race CAR وغيرهم.
سنمرر أيضًا strings برموز خاصة ، مثل 2A3*3a2 و 2A3 3a2 و 2_A3*3#A2.
--hints--
palindrome("eye") يجب أن يعيد boolean.
assert(typeof palindrome('eye') === 'boolean');
palindrome("eye") يجب أن يعيد true.
assert(palindrome('eye') === true);
palindrome("_eye") يجب أن يعيد true.
assert(palindrome('_eye') === true);
palindrome("race car") يجب أن يعيد true.
assert(palindrome('race car') === true);
palindrome("not a palindrome") يجب أن يعيد false.
assert(palindrome('not a palindrome') === false);
palindrome("A man, a plan, a canal. Panama") يجب أن يعيد true.
assert(palindrome('A man, a plan, a canal. Panama') === true);
palindrome("never odd or even") يجب أن يعيد true.
assert(palindrome('never odd or even') === true);
palindrome("nope") يجب أن يعيد false.
assert(palindrome('nope') === false);
palindrome("almostomla") يجب أن يعيد false.
assert(palindrome('almostomla') === false);
palindrome("My age is 0, 0 si ega ym.") يجب أن يعيد true.
assert(palindrome('My age is 0, 0 si ega ym.') === true);
palindrome("1 eye for of 1 eye.") يجب أن يعيد false.
assert(palindrome('1 eye for of 1 eye.') === false);
palindrome("0_0 (: /-\ :) 0-0") يجب أن يعيد true.
assert(palindrome('0_0 (: /- :) 0-0') === true);
palindrome("five|\_/|four") يجب أن يعيد false.
assert(palindrome('five|_/|four') === false);
--seed--
--seed-contents--
function palindrome(str) {
return true;
}
palindrome("eye");
--solutions--
function palindrome(str) {
var string = str.toLowerCase().split(/[^A-Za-z0-9]/gi).join('');
var aux = string.split('');
if (aux.join('') === aux.reverse().join('')){
return true;
}
return false;
}