daily pastebin goal
60%
SHARE
TWEET

Untitled

a guest Jan 24th, 2019 68 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. QStringList partsOfName = input.split(' '); // Разбить входную строку на части по пробелам
  2.     bool isPartsOfNameUpper = true; // Считать, что каждая часть имени (ФИО) начинается с большой буквы
  3.  
  4.     // Проверяем, чтобы каждая часть имени (ФИО) начиналась с большой буквы
  5.     for (int i = 0; i < partsOfName.size(); i++) // Для каждой части входной строки, которая была разбита по пробелам
  6.         if (partsOfName.at(i).length() > 0) // Если длина части ненулевая
  7.             if(!partsOfName.at(i).at(0).isUpper()) // Если первый символ выделенной части строки не находится в верхнем регистре
  8.                 isPartsOfNameUpper = false;
  9.  
  10.     bool isPartsOfNameNotEmpty = true; // Считать, что каждая часть имени (ФИО) не пустая
  11.  
  12.     // Проверяем, чтобы каждая часть имени (ФИО) не была нулевой
  13.     for (int i = 0; i < partsOfName.size(); i++) // Для каждой части входной строки, которая была разбита по пробелам
  14.         if (partsOfName.at(i).length() == 0) // Если длина части равна нулю
  15.             isPartsOfNameNotEmpty = false;
  16.  
  17.     // Проверяем, чтобы строка содержала только буквы и пробелы, её длина не превышала 45 символов и количество слов не превышало 3
  18.     for (int i = 0; i < input.length(); i++)
  19.         if ( (!(input[i].isLetter()) && !(input[i].isSpace())) || input.length() > 45 || partsOfName.size() > 3)
  20.             return QValidator::Invalid;
  21.     if (input.length() <= 45 && partsOfName.size() == 3 && isPartsOfNameUpper && isPartsOfNameNotEmpty)
  22.         return QValidator::Acceptable;
  23.     else
  24.         return QValidator::Intermediate;
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top