Подсчет количества слов в тексте, начинающихся с "а" - VBA
Формулировка задачи:
Как мне решить вот эту задачу?
Произвести подсчет числа слов в тексте начинающихся с символа "а"?
Решение задачи: «Подсчет количества слов в тексте, начинающихся с "а"»
textual
Листинг программы
- Option Explicit
- Sub Counting_words()
- '
- 'Подсчёт слов исключая союзы, знаки и числа
- 'by the fever brain
- '
- 'на самом деле список союзов гораздо внушителнее, здесь я указал наиболее расспространенные
- 'Вот сайт где можно посмотреть этот список: [url]http://moirus.ru/podgotovka-k-ege/spisok-souzov[/url]
- 'Текст по умолчанию:
- Const txt$ = "Самая яркая особенность этого ВАЗ 2108 из Ярославля находится под капотом. Открыв капот вы не увидите там ничего лишнего. Такие же чистые бежевые крылья, моторный щит и сам двигатель. И всё! Никаких лишних проводов, аккумулятора, ничего лишнего."
- Const souse$ = "в же и из или на не о об под" 'Союзы
- Const p = " ", pp = p & p 'Пробелы
- Dim newtx$, num$, i&, v
- newtx$ = InputBox("Введите ваш текст", , txt) & p
- For i = 33 To 63: num = num & p & Chr(i): Next 'Создание списка исключающих знаков
- For Each v In Split(Mid$(num, 2)): newtx = Replace(newtx, v, p): Next
- 'Удаление знаков припенания и чисел коды ANSI от 33 до 63
- For Each v In Split(souse): newtx = Replace(newtx, p & v & p, p, Compare:=1): Next
- While InStr(1, newtx, pp): newtx = Replace(newtx, pp, p): Wend 'Удаление пустот
- newtx = Trim$(newtx) 'удаление передних и задних пробелов
- If Len(newtx) > 0 Then i = UBound(Split(Trim$(newtx))) + 1 Else i = 0
- MsgBox "Текст:" & vbLf & txt & vbLf & vbLf & "Количество слов в тексте = " & i
- End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д