Вводится различные символы, нужно вывести только заглавные буквы, которые стоят по две - VB

Узнай цену своей работы

Формулировка задачи:

Помогите пожалуйста!!! Вводится различные символы (!2543ФАавпвыПАваААА46лпРТ), нужно вывести только заглавные буквы которые стоят по две, например АП, АР,ЙЦ, если по одно или три, то их не надо выводить.

Решение задачи: «Вводится различные символы, нужно вывести только заглавные буквы, которые стоят по две»

textual
Листинг программы
Option Compare Binary 'это по умолчанию так, но не повредит
 
Sub couples_ala_AB()
Const vvod = "!2543ФАавпвыПАваААА46лпРТ"
Const PAIR = "[A-ZА-ЯЁ][A-ZА-ЯЁ]" 'это шаблон поиска пары заглавных букв
Const P = vbLf 'перевод строки (при выводе)
Dim i, s, dobavka
 
    dobavka = Mid(vvod, 1, 2) 'отдельно проверим крайнюю пару (левую)
    If dobavka Like PAIR Then _
    If Not Mid(vvod, 3, 1) Like "[A-ZА-ЯЁ]" Then s = s & dobavka
    
        For i = 2 To Len(vvod) - 2
            dobavka = Mid(vvod, i, 2) 'смотрим, что за символы i-й и (i+1)-й
            If dobavka Like PAIR Then 'пара заглавных букв
              If Not (Mid(vvod, i - 1, 1) Like "[A-ZА-ЯЁ]" _
                   Or Mid(vvod, i + 2, 1) Like "[A-ZА-ЯЁ]") Then s = s & dobavka
                MsgBox "dobavka: " & dobavka & P & "s: " & s
            End If
        Next
        
    dobavka = Mid(vvod, Len(vvod) - 1) 'отдельно проверим крайнюю пару (правую)
    If dobavka Like PAIR Then _
    If Not Mid(vvod, Len(vvod) - 2, 1) Like "[A-ZА-ЯЁ]" Then s = s & dobavka
    
    MsgBox "Вводная:" & P & vvod & P & P & "Отфильтрованная: " & P & s
End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 3.889 из 5
Похожие ответы