[C#] Домашно Strings and Text Processing - 8 задача


8

Условие: Write a program that extracts from a given text all sentences containing given word.

Example: The word is "in". The text is:

We are living in a yellow submarine. We don't have anything else. Inside the submarine is very tight. So we are drinking all the day. We will move out of it in 5 days.

The expected result is:

We are living in a yellow submarine.
We will move out of it in 5 days.

Consider that the sentences are separated by "." and the words – by non-letter symbols.

Решениеsource.

Обяснение: Отново използваме регулярен израз. Трябва обаче и да ги разделим спрямо точките и думите да са цели. Целта на регулярния израз е да ни мачне първото нещо, което не е точка, следвано от каквото и да е, самата дума и след нея пак може да имаме още нещо и да завършва с точка. В началото махаме интервала след точката.

P.S. Подобно на 4 задача.




Отговори



0

GitHub

Проверявам дали думата която се търси е самостоятелна (дали след нея има празно място) . Ако е показвам на конзолата цялото изречение (изреченията са split-нати по .)


от dzhenko (3893 точки)


0

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

http://pastebin.com/4YgMzkAd

Получи се доста кратко и стегнато.


от ddonchev (120 точки)


0

Ето и моето решение, използвам Regex.Match . [^a-zA-Z] означава всички символи без главни и малки латински букви.
http://pastebin.com/QAkP9JAM


от memo_pu (62 точки)