Loading...

Във форума е въведено ограничение, което позволява на потребителите единствено да разглеждат публикуваните въпроси.

InaAbadjieva avatar InaAbadjieva 8 Точки

10. Secret Data /Strings and Regular Expressions Exercise

Стигам до 85 точки и един тест, който гърми. Regex-ите трябва да са верни и явно проблемът е в останалата част с проверките, но пробвах по различни начини да я построя задачата и не мога да мина всичките тестове.

https://github.com/inaabadjieva/SoftUni_JavaScript/blob/master/JS_Fundamentals/04_Arrays%26Strings/secretDataRegex.js

Някой да помогне или да сподели код, който минава всички тестове...???

Мерси :)

 

 

Тагове:
0
JavaScript Fundamentals
djc_bg2015 avatar djc_bg2015 923 Точки
Best Answer

Ето от мен 100/100:

https://github.com/vdonchev/JavaScriptFundamentals-AllExercisesAndLabs/blob/master/10.StringsAndRegExExercises/10.secret-data.js

input => input
    .forEach(l => console.log(l
        .replace(
            /(\*[A-Z][a-zA-Z]*)(?= |\t|$)|(\+[0-9-]{10})(?= |\t|$)|(![0-9a-zA-Z]+)(?= |\t|$)|(_[0-9a-zA-Z]+)(?= |\t|$)/g,
            (m) => '|'.repeat(m.length))));

А сега ще погледна твоя код за грешки :)

1
05/10/2016 17:53:04
InaAbadjieva avatar InaAbadjieva 8 Точки

Готино решение - много функционално...:) 

Мерси и за двата отговора - уж симпъл, пък нещо не можах да го изкарах до края. 10х

1
djc_bg2015 avatar djc_bg2015 923 Точки

С твоите регекси решение:

function secretDataRegex(input) {
    let regexName = /\*[A-Z][A-Za-z]*(?=\s|$)/g
    let regexPhone = /\+[0-9-]{10}(?=\s|$)/g
    let regexId = /![a-zA-Z0-9]+(?=\s|\t|$)/g
    let regexBase = /_[0-9A-Za-z]+(?=\s|$)/g

    for (let line of input) {
        console.log(line
            .replace(regexName, m => '|'.repeat(m.length))
            .replace(regexPhone, m => '|'.repeat(m.length))
            .replace(regexId, m => '|'.repeat(m.length))
            .replace(regexBase, m => '|'.repeat(m.length))
        )
    }
}

 

3
IliqnStankov avatar IliqnStankov 1 Точки

Здравейте, колеги, въпроса ми е как във .replace 'm' разбра ,че трябва да вземе дължината на съвпадналия с регекса стринг ? 

0
GerganaTsirkova avatar GerganaTsirkova 17 Точки

Lookahead не се  брои

0
18/05/2018 20:38:26
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.