2.5 KiB
id | title | challengeType | forumTopicId | dashedName |
---|---|---|---|---|
5a23c84252665b21eecc8036 | Коди керування рядка і додаткові символи рядка | 1 | 302327 | strip-control-codes-and-extended-characters-from-a-string |
--description--
Завдання у тому, щоб змінити коди управління і розширити символи у рядку. Рішення повинне показувати, як досягти кожен з наступних результатів: рядок з кодом управління і розширеними символами. У ASCII контрольні коди мають десяткові коди 0 до 31 і 127. На основі системи ASCII, якщо коди управління замінюються, то в результаті рядок може мати всі ці символи в діапазоні від 32 до 126 знаків після коми в таблиці ASCII. На основі системи non-ASCII, ми розглядаємо символи, що не мають відповідного знака у таблиці( у діапазоні з 32 до 126 десяткових символів) символи для цього завдання мають бути розширеними.
--hints--
strip
має бути функцією.
assert(typeof strip == 'function');
strip("abc")
повинне повернути рядок.
assert(typeof strip('abc') == 'string');
strip("\ba\x00b\n\rc\fd\xc3")
має повернути"abcd"
.
assert.equal(strip('\ba\x00b\n\rc\fd\xc3'), 'abcd');
strip("\u0000\n abc\u00E9def\u007F")
має повернути" abcdef"
.
assert.equal(strip('\u0000\n abc\u00E9def\u007F'), ' abcdef');
strip("a\n\tb\u2102d\u2147f")
має повернути"abdf"
.
assert.equal(strip('a\n\tb\u2102d\u2147f'), 'abdf');
strip("Français.")
має повернути"Franais."
.
assert.equal(strip('Français.'), 'Franais.');
strip("123\tabc\u0007DEF\u007F+-*/€æŧðłþ")
має повернути"123abcDEF+-*/"
.
assert.equal(strip('123\tabc\u0007DEF\u007F+-*/€æŧðłþ'), '123abcDEF+-*/');
--seed--
--seed-contents--
function strip(s) {
}
--solutions--
function strip(s) {
return s
.split('')
.filter(function(x) {
var n = x.charCodeAt(0);
return 31 < n && 127 > n;
})
.join('');
}