Как подсчитать количество кириллических символов в строке

Подсчет русских символов в строке.

На этом форуме Вы можете задать вопросы знатокам программы и автору.
Ответить
Аватара пользователя
Dryundel
Полковник
Сообщения: 2401
Зарегистрирован: 22.05.2017{, 23:15}
Репутация: 783
Откуда: Ярославль
Имя: Андрей
Контактная информация:

Как подсчитать количество кириллических символов в строке

#1

Сообщение Dryundel » 23.02.2022{, 19:38}

av, так я же делал блок. Месяц тогда рыл инфу что бы все считалось и русские и английские и знаки типа №.

aidar_i
Полковник
Сообщения: 3122
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 675
Откуда: Уфа
Имя: Айдар
Контактная информация:

Как подсчитать количество кириллических символов в строке

#2

Сообщение aidar_i » 23.02.2022{, 19:41}

Dryundel писал(а):
23.02.2022{, 19:38}
av, так я же делал блок. Месяц тогда рыл инфу что бы все считалось и русские и английские и знаки типа №.
Ссылку дай.


Аватара пользователя
Dryundel
Полковник
Сообщения: 2401
Зарегистрирован: 22.05.2017{, 23:15}
Репутация: 783
Откуда: Ярославль
Имя: Андрей
Контактная информация:

Как подсчитать количество кириллических символов в строке

#4

Сообщение Dryundel » 23.02.2022{, 21:32}

av писал(а):
23.02.2022{, 20:31}
Dryundel, Андрей вы разрешите использовать вашу функцию из блока для создания своих блоков ?
Не вижу поводов даже для таких вопросов. Все же в открытом доступе.
av писал(а):
23.02.2022{, 20:31}
Dryundel, почему то функция Q = rusStrlen(S.c_str()); скомпилировалась с ошибкой. Вместо операнда "S"--> вход, подставил параметр блока String "Name" Q = rusStrlen(Name.c_str());. Изменил передачу функции операнда Q = rusStrlen(Name); и все заработало.
Так Вы вместо переменной подсунули в функцию саму строку. Как то не уверен что это будет работать правильно.
Если же написать в коде что то типа:

String S = <Name>; // <Name> это тег параметра
Q = rusStrlen(S.c_str());

То все должно работать.
av писал(а):
23.02.2022{, 20:31}
Полез в темы связанные с дисплеями и пытался там хоть что то раскопать.

Плохо искали. Данная функция родилась конкретно для этого блока.
Альтернативный блок LCD на чипе HD44780 без кириллицы (руссификация в комплекте)

А еще я передавал этот алгоритм в открытом виде где то в теме "Разработки ecoins". Но в той куче (не скажу чего) нереально трудно найти бриллиант, хотя их там много. :)

Аватара пользователя
Dryundel
Полковник
Сообщения: 2401
Зарегистрирован: 22.05.2017{, 23:15}
Репутация: 783
Откуда: Ярославль
Имя: Андрей
Контактная информация:

Как подсчитать количество кириллических символов в строке

#5

Сообщение Dryundel » 24.02.2022{, 00:28}

av писал(а):
23.02.2022{, 23:16}
Такой вариант рассматривал, но жалко тратиться на переменную. Ваяю на старом редакторе как в черновике. Потом уже буду переносить на новый редактор.
В данном случае никаких растрат не будет. Локальная переменная не займет места. Она является временной и создается заново в каждом цикле. Не надо ее писать в Declare, а так как я привел в примере. А вот со строкой, я честно, не знаю.
c_str() это метод String преобразующий строку в СИ формат.

Короче, могу я чего то не знать в конце концов? :)

Ответить

Вернуться в «Спросить у знатоков»