Loading...

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

DimiTVP avatar DimiTVP 54 Точки

[Programming Fundamentals] [Strings, Dictionaries, Lambda and LINQ] 4. Extract Sentences by Keyword

Всички тестове ми минават само последния не минава и ми дава 80 точки. Четох условието 10 пъти и не виждам какво пропускам. Предполагам, че е нещо тук:

  • The words are separated one from another by a non-letter character.

Но не мога да се сетя какво точно може да ми дадъдт като Input, че да не стане.

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

http://pastebin.com/RkEfFd7k

Тагове:
1
Programming Fundamentals
TeodorDimitrov89 avatar TeodorDimitrov89 264 Точки
Best Answer

До колкото схванат от днес след като я мъча от снощи от 2 часа.

Трябва да добавиш всички възможни разделители като ", :, ;,......." 

защото може в изречението да е следното :

to

Welcome to: SoftUni! You will learn programming, algorithms, problem solving and software, technologies. You need to allocate for study 20-30 hours weekly. Good luck! I am fan of Motorhead. To be or not to be - that is the question. TO DO OR NOT?

ако не нямаш този разделител няма да приеме че е намерил търсената дума и ще изгърми.

Не знам дали ти помогнах но се надявам.

1
TeodorDimitrov89 avatar TeodorDimitrov89 264 Точки

В подсказките пише Replace each non-letter character with space

Изчакайте да качи видеото от днес или поне се надявам да го качат,ако я реша по късно понеже не написах пълния код ще го кача ако някой не ме изпревари.

0
sly_racoon88 avatar sly_racoon88 10 Точки

От мен едно решение с RegEx  и по-малко играчка:

http://pastebin.com/ye8m0EC1

Малко cheat, защото се възползвам от това, че няма думи, който завършват на думата - примерно ако имаше ex и regex щеше да вземе regex. Но няма :D

0
alex1966 avatar alex1966 255 Точки

Здравейте, гледам че днес имаше много въпроси и доста хора не решили задачата със 100 точки, нека да разясня малко
1. Четем си keyword-a.
2. Четем си list/array и сплитваме по "." "!","?" - т.е. по край на изречение.
3. Въртим цикъл от 0 до list/array.count
4. Вътре в цикъла правим един масив който ни разделя list/array от точка втора с всички възможни разделители защото ако след дума имаме запетая "question,", то това ни се води като цяла дума, а всъщност не е, в условието беше казано да се сплитне по non-letter characters, т.е. всичко което може да разделя две думи.
5. Правим проверка дали в масива от точка 4 има keyword, ако има принти елемента на този индекс .Trim(), защото като сплитнем по дадени разделители след думите/изреченията ни остават празни места.
Така изглежда като код, дава 100/100 http://pastebin.com/e8E2nnjt

9
TeodorDimitrov89 avatar TeodorDimitrov89 264 Точки

Браво ето това е обяснение .

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