Мне нужно извлечь предложения, содержащие слово island
или Island
из абзаца. Каждое предложение начинается с заглавной буквы и заканчивается периодом.Получить предложения, содержащие ключевое слово из абзаца
Пункт в строке
" The islands were settled from the second century AD by a series of local empires. In 1819, Sir Stamford Raffles founded modern Singapore as a trading post of the East India Company; after the company collapsed, the islands were ceded to Britain and became part of its Straits Settlements in 1826. During World War II, Singapore was occupied by Japan. It gained independence from Britain in 1963, by uniting with other former British territories to form Malaysia, but was expelled two years later over ideological differences. After early years of turbulence, and despite lacking natural resources and a hinterland, the nation developed rapidly as an Asian Tiger economy, based on external trade and its human capital. "
(Источник: https://en.wikipedia.org/wiki/Singapore)
Идеальный результат в качестве элементов массива:
- острова поселили со второго века нашей эры серии локальных империй.
- В 1819 году сэр Стэмфорд Раффлс основал современный Сингапур как торговый пост Ост-Индской компании; после того, как компания развалилась, острова были переданы в Великобританию и стал частью ее Straits поселений в 1826
Я нашел примеры о том, как сделать это на других языках, как Java (Regex to find sentence containing specific word (java) from paragraph). Однако одно и то же Regex не работало для Ruby.
Можно ли это использовать с помощью Ruby?
Это удалит период после предложений. – sawa
true :-) Должно быть легко добавить их обратно, хотя. –
Что делать, если предложение содержит слово «островитянин»? Я бы, наверное, без Руби. Ruby трудно прочитать и понять, когда вы вернетесь к коду позже. Нет? Нет, если вы приобрели определенную компетенцию с языком, что верно для любого языка, включая регулярные выражения. –