0 / 0 / 1
Регистрация: 20.08.2016
Сообщений: 15
|
|
1 | |
Удаление слов с заглавной буквы17.08.2017, 19:47. Показов 1100. Ответов 8
Метки нет (Все метки)
Доброго вечера форумчане.
Возникла проблема. В .тхт файле нужно удалить все слова начинающиеся с заглавной. Нашел как удалять строки содержащие заглавные символы. Но это не то что надо. Как решить данную проблему? Заранее благодарен за ответы и помощь.
0
|
17.08.2017, 19:47 | |
Ответы с готовыми решениями:
8
Процедура распечатки массива девяти слов и этих же слов с заглавной буквы по столбцам Поиск слов, начинающихся с заглавной буквы Посчитать в тексте количество слов с заглавной буквы Подсчитать сколько слов начинается с заглавной буквы |
Любознательный
6546 / 1913 / 333
Регистрация: 10.03.2016
Сообщений: 4,355
|
||||||
18.08.2017, 09:53 | 2 | |||||
1
|
6242 / 2117 / 334
Регистрация: 10.12.2013
Сообщений: 7,293
|
||||||
18.08.2017, 10:35 | 3 | |||||
всё так, только эту ерунду с перечислением A Z Я и ё заменить на unicode properties
0
|
Любознательный
6546 / 1913 / 333
Регистрация: 10.03.2016
Сообщений: 4,355
|
|
18.08.2017, 12:46 | 4 |
volodin661, сомневаюсь, что та "ерунда" чем-то хуже этих модных \p{}, ибо работают они не везде, а если работают, то абы как, но только не так как задумывалось. Во всяком случае в PoSh, совместно с границей слова, они вообще не работают, только вот так "\p{Lu}\p{Ll}", причем цифры ведь не захватываются, что в данном случае нежелательно... в общем, старые добрые символьные классы понадежнее будут.
2
|
6242 / 2117 / 334
Регистрация: 10.12.2013
Сообщений: 7,293
|
|
18.08.2017, 16:27 | 5 |
а) мода на Unicode существует более 20 лет, можно привыкнуть. б) формально у ТС не было указано ни про кириллицу, ни про латиницу. в) я не могу утверждать, что тщательно тестировал реализацию Unicode в regex в C# и powershell, но если к данному инструменту в этой части есть претензии, то нужно поменять инструмент. г) про желательность захвата цифр у ТС нет ни слова, но можно \p{L} заменить на \w д) 'ерундой' я называю призыв запоминать информацию по особенностям размещения алфавитных символов внутри всех национальных диапазонов Unicode; вот не хочется мне помнить, что кириллическом диапазоне ё и Ё выпадают или украинская i выпадает или македонская Ѓ выпадает.
2
|
18.08.2017, 16:55 | 6 | |||||
Почему не работают? Я сколько раз их в C# использовал - не помню, чтобы они как-то не так работали.
Вот здесь, например, все работает ожидаемым образом (хотя с границей слова \b, хоть без нее):
3
|
Любознательный
6546 / 1913 / 333
Регистрация: 10.03.2016
Сообщений: 4,355
|
|||||||||||
18.08.2017, 18:03 | 7 | ||||||||||
Код
слово1 слово2 слово3 слово4 Слово1 слово2 слово3 слово4 слово1 Слово2 слово3 слово4 слово1 слово2 Слово3 слово4 слово1 слово2 слово3 Слово4 cлово1 1слово2 vслово3 tслово4 Ёлово1 ёслово2 Ьслово3 слово4 Добавлено через 7 минут Да, сорри, моя ошибка... и не должно работать было, сочинял на скорую руку, не проверив... там везде цифры же, это меня и сбило. Добавлено через 5 минут Вот так, надо было:
1
|
0 / 0 / 1
Регистрация: 20.08.2016
Сообщений: 15
|
|
20.08.2017, 17:29 [ТС] | 8 |
Спасибо всем. Очень помогли. Правда только на одной из машин вариант не работает. На остальных не хочет зараза((
Сорри за неточность в ТС, да текст в кириллице и в UTF8 без BOM .
0
|
Любознательный
6546 / 1913 / 333
Регистрация: 10.03.2016
Сообщений: 4,355
|
|||||||||||
20.08.2017, 19:18 | 9 | ||||||||||
"На одной не работает, на остальных не хочет" - то потухнет, то погаснет?
Powershell необходимо обновлять периодически. Дайте команду в консоли:
Если обновление проблематично, то в таком случае строку следует заменить на такую:
1
|
20.08.2017, 19:18 | |
20.08.2017, 19:18 | |
Помогаю со студенческими работами здесь
9
Регулярное выражение для выделения слов, начинающихся с заглавной буквы Вводится предложение из пяти слов. Сделать, чтобы каждое слово начиналось с заглавной буквы Удаление слов содержащих латинские буквы... Удаление слов, начинающихся с гласной буквы, из строки Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |