0 / 0 / 0
Регистрация: 09.11.2016
Сообщений: 62
1

Удалить из файла все слова в нижнем регистре, а так же знаки препинания

20.09.2017, 23:45. Показов 1429. Ответов 20
Метки нет (Все метки)

Необходимо из файла удалить все слова в нижнем регистре а так же знаки препинания.

Пример расположения слов в файлеЯХТАШ (яхдаш) м. или яхташка ж. немецк. охотничья сума, для дичи. Яхташная сетка.

ЯЦКО, см. ятской.

ЯЧАТЬ, якнуть южн. зап. стонать, жалобно кликать. Гуси кричат, лебеди ячат, песня. Я его бякнул, ажно он якнул! )

В итоговом файле должно быть так
ЯХТАШ
ЯЦКО
ЯЧАТЬ)
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.09.2017, 23:45
Ответы с готовыми решениями:

Дано предложение. Нужно напечатать все его различные слова. Предварительно удалить все знаки препинания
Возможно ли это сделать на базовом уровне, понятном для понимания школьнику

Удалить из строки все слова, длина которых меньше пяти символов. В строке не используются знаки препинания
Ребят , не могу решить , помогите пожалуйста. #include "pch.h" #include <Windows.h> #include...

Как сделать слова, буквы четным индексом будет в верхнем регистре, а с нечетными в нижнем регистре
Ввожу слова или текс в textBox вывожу на label, как измененную строку у которой каждая буква с...

Сделать так, чтобы паскаль не воспринимал знаки препинания за слова
Дано следующее задание(ниже), эта программа считает знаки препинания за слова, а если будет...

20
20 / 20 / 13
Регистрация: 29.08.2017
Сообщений: 89
21.09.2017, 09:39 2
Судя по примеру проще удалить не все слова в нижнем регистре а так же знаки препинания, а просто извлекать из каждой строки символы до первой небуквы
0
0 / 0 / 0
Регистрация: 09.11.2016
Сообщений: 62
21.09.2017, 09:41  [ТС] 3
AnotherDev, а как это сделать?
0
20 / 20 / 13
Регистрация: 29.08.2017
Сообщений: 89
21.09.2017, 10:24 4
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
using System;
using System.IO;
using System.Text;
using System.Linq;
 
class Test
{
    public static void Main()
    {
        string line;
        Encoding enc = Encoding.Default;
        StringBuilder sb = new StringBuilder();
 
        try
        {  
            using (StreamReader sr = new StreamReader(@"C:\TestFrom\TestFile.txt", enc))
            {
                while ((line = sr.ReadLine()) != null)
                {
                    sb.Append(line.TakeWhile((ch) => Char.IsLetter(ch)).ToArray());
                    sb.Append(Environment.NewLine);
                }
            }
 
            using (StreamWriter sr = new StreamWriter(@"C:\TestFrom\TestFile_changed.txt", false, enc))
            {
                sr.Write(sb);
            }
        }
        catch (Exception e)
        {
            Console.WriteLine("The file could not be read:");
            Console.WriteLine(e.Message);
        }
 
        Console.WriteLine(sb.ToString());
    }
}
0
0 / 0 / 0
Регистрация: 09.11.2016
Сообщений: 62
21.09.2017, 15:28  [ТС] 5
AnotherDev, спасибо

Добавлено через 5 часов 2 минуты
AnotherDev, а как результат записать в файл?
0
11 / 11 / 3
Регистрация: 24.12.2015
Сообщений: 92
21.09.2017, 17:09 6
C#
1
System.IO.File.WriteAllText(путь, sb.ToString());
0
20 / 20 / 13
Регистрация: 29.08.2017
Сообщений: 89
21.09.2017, 18:38 7
Цитата Сообщение от PVRVZNT Посмотреть сообщение
AnotherDev, а как результат записать в файл?
Так оно и пишется в файл вот здесь:
C#
1
2
3
4
using (StreamWriter sr = new StreamWriter(@"C:\TestFrom\TestFile_changed.txt", false, enc))
    {
        sr.Write(sb);
    }
0
0 / 0 / 0
Регистрация: 09.11.2016
Сообщений: 62
21.09.2017, 21:16  [ТС] 8
AnotherDev, но в файле ничего не изменяется, он выводит на консоль просто
0
20 / 20 / 13
Регистрация: 29.08.2017
Сообщений: 89
21.09.2017, 21:17 9
Цитата Сообщение от PVRVZNT Посмотреть сообщение
AnotherDev, но в файле ничего не изменяется, он выводит на консоль просто
Создается новый файл "TestFile_changed.txt" и туда пишется результат.
0
0 / 0 / 0
Регистрация: 09.11.2016
Сообщений: 62
21.09.2017, 21:19  [ТС] 10
AnotherDev, хм,я не могу этого найти
0
20 / 20 / 13
Регистрация: 29.08.2017
Сообщений: 89
21.09.2017, 21:20 11
А вы путь к файлу на свой поменяли?
В using (StreamReader sr = new StreamReader(@"C:\TestFrom\TestFile.txt", enc))
и в using (StreamWriter sr = new StreamWriter(@"C:\TestFrom\TestFile_changed.txt", false, enc))
0
0 / 0 / 0
Регистрация: 09.11.2016
Сообщений: 62
21.09.2017, 21:21  [ТС] 12
AnotherDev, да
0
20 / 20 / 13
Регистрация: 29.08.2017
Сообщений: 89
21.09.2017, 21:23 13
Покажите Ваш код. У меня всё работает.
0
0 / 0 / 0
Регистрация: 09.11.2016
Сообщений: 62
21.09.2017, 21:23  [ТС] 14
AnotherDev,

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
using System;
using System.IO;
using System.Text;
using System.Linq;
 
class Test
{
    public static void Main()
    {
        string line;
        Encoding enc = Encoding.Default;
        StringBuilder sb = new StringBuilder();
 
        try
        {
            using (StreamReader sr = new StreamReader(@"C:\Voc.txt", enc))
            {
                while ((line = sr.ReadLine()) != null)
                {
                    sb.Append(line.TakeWhile((ch) => Char.IsLetter(ch)).ToArray());
                    sb.Append(Environment.NewLine);
                }
            }
 
            using (StreamWriter sr = new StreamWriter(@"C:\Voc2.txt", false, enc))
            {
                sr.WriteLine(sb);
                sr.Close();
            }
           
        }
        catch (Exception e)
        {
            Console.WriteLine("The file could not be read:");
            Console.WriteLine(e.Message);
        }
        Console.WriteLine(sb.ToString());
    }
}
0
20 / 20 / 13
Регистрация: 29.08.2017
Сообщений: 89
21.09.2017, 21:25 15
Программе отказано в доступе чтобы писать в корень диска. Создайте папку какуюнить и туда запись сделайте.
Например "C:\SomeFolder\Voc2.txt"

Ещё я забыл после
C#
1
Console.WriteLine(sb.ToString());
написать
C#
1
Console.ReadKey(true);
чтобы консоль не закрывалась.
Видимо поэтому Вы не видели надпись об отказе доступа
0
0 / 0 / 0
Регистрация: 09.11.2016
Сообщений: 62
21.09.2017, 21:29  [ТС] 16
AnotherDev, Спасибо) Можно еще пару вопросов?
0
20 / 20 / 13
Регистрация: 29.08.2017
Сообщений: 89
21.09.2017, 21:33 17
Можно конечно.
0
0 / 0 / 0
Регистрация: 09.11.2016
Сообщений: 62
21.09.2017, 21:35  [ТС] 18
AnotherDev, Спасибо)Все работает) Задам еще пару вопросов?

Добавлено через 1 минуту
AnotherDev, спасибо) РАботает все) Задам еще пару вопросов?
0
20 / 20 / 13
Регистрация: 29.08.2017
Сообщений: 89
21.09.2017, 21:37 19
Задавайте
0
0 / 0 / 0
Регистрация: 09.11.2016
Сообщений: 62
21.09.2017, 21:37  [ТС] 20
AnotherDev, 1)как сделать так, чтобы допустим он подряд выдавал слов 5, рандомных, а после переходил на следующую строку?
2)Как сравнить слова по последним двум символам?
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.09.2017, 21:37
Помогаю со студенческими работами здесь

Удалить все знаки препинания
Изменить программу так, чтобы удалились все знаки препинания. var s, p:string; i, k:integer;...

Удалить из строки все знаки препинания
Дана строка символов ( 2-3 строки ) в файле F1. Составить функцию , удаляющую из строки все ...

Удалить из строки все знаки препинания
Пусть с клавиатуры вводятся строка и символ. Если введённый символ является знаком препинания, то...

Удалить все знаки препинания из строки
1. С клавиатуры, или из самой программы, или из файла в строковую переменную вносится некоторый...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru