powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Как оставить в троке только 1 символ, но столько раз сколько он в строке встречается?
4 сообщений из 4, страница 1 из 1
Как оставить в троке только 1 символ, но столько раз сколько он в строке встречается?
    #39969914
user_t0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый вечер,


имеется ооооочень длинная строка, 50млн символов.


Как в ней подсчитать количество пробелов?

Я попрбовал в цекле посимвольно - но это занимает бесконечность.


И подомал что как-то можно с помощью регулярных выражений это сделать.
Обрезать все другие символы и подсчитать длинну строки потом.

По производительности должно быстрее гораздо.

Вот только regexp_matches не оставляет проблеы, с любым количеством пробелов результат одинаковый.

SELECT regexp_matches('foo ba rb e quebaz', ' ')
"{" "}"




Подскажите как можно решить эту задачу?
...
Рейтинг: 0 / 0
Как оставить в троке только 1 символ, но столько раз сколько он в строке встречается?
    #39969941
Guzya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Попробуйте


Код: sql
1.
select (count(*) - 1) from  unnest(string_to_array('foo ba rb e quebaz',' '))
...
Рейтинг: 0 / 0
Как оставить в троке только 1 символ, но столько раз сколько он в строке встречается?
    #39969950
Swa111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
user_t0,

Код: plsql
1.
  length(str) - length(replace(str, ' ', ''))
...
Рейтинг: 0 / 0
Как оставить в троке только 1 символ, но столько раз сколько он в строке встречается?
    #39969952
Swa111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
user_t0,

Код: plsql
1.
select length(regexp_replace('foo ba rb e quebaz', '[^ ]', '', 'g'))
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Как оставить в троке только 1 символ, но столько раз сколько он в строке встречается?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]