|
156 / 143 / 62
Регистрация: 08.09.2014
Сообщений: 1,220
|
|
Как вычленить цифры из строки std::string?22.01.2015, 12:28. Показов 6152. Ответов 47
Метки нет (Все метки)
Кто подскажет как из строки выделить цифры тоесть
имеются строки сссщ1 сссщ2 сссщ3 и так далее вплоть до 999 как вычленить цифры из строки std::string
0
|
|
| 22.01.2015, 12:28 | |
|
Ответы с готовыми решениями:
47
ошибка error: cannot convert 'std::string {aka std::basic_string<char>}' to 'std::string* {aka std::basic_stri Как работать с отдельными элементами строки std::string?
|
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
| 22.01.2015, 14:46 | |
|
Игорь1986, Что? Это как же? Первый find_if находит первую цифру в строке. Дальше в цикле: первый find_if находит первую не цифру после найденной первой цифры, второй находит первую цифру в строке после того индекса который нашел первый find_if.
#include <algorithm> забыл, добавьте.
0
|
|
|
156 / 143 / 62
Регистрация: 08.09.2014
Сообщений: 1,220
|
|
| 22.01.2015, 14:55 [ТС] | |
|
И пожалуй последний вопрос как мне уйти от numbers.push_back(std::string(pos, end));
тоесть обойтись без вектора строк а просто нашли и записали в элемент unsigned short
0
|
|
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
| 22.01.2015, 14:57 | |
|
Игорь1986, Перевести строку в число -> куда-то добавить/вывести в поток.
0
|
|
|
156 / 143 / 62
Регистрация: 08.09.2014
Сообщений: 1,220
|
|
| 22.01.2015, 14:57 [ТС] | |
|
Хотя еще не ясен вот такой момент [](char c) { return !isdigit(c)
с это моя цифра я прав как понять эту строчку std::find_if(pos + 1, doName.end(), [](char c)
0
|
|
|
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
|
|||||||
| 22.01.2015, 14:58 | |||||||
0
|
|||||||
|
156 / 143 / 62
Регистрация: 08.09.2014
Сообщений: 1,220
|
|
| 22.01.2015, 15:01 [ТС] | |
|
Ну еще круче я ж написал записать просто в переменную цифру
0
|
|
|
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
|
|
| 22.01.2015, 15:03 | |
|
0
|
|
|
156 / 143 / 62
Регистрация: 08.09.2014
Сообщений: 1,220
|
|
| 22.01.2015, 15:10 [ТС] | |
|
Блин как в том фильме ну какой же вы тупой, чесно до сих пор не понимаю вашего кода, плюс незнаю как мне записать найденное число в переменную по коду приведенному ForEveR
Добавлено через 5 минут Похоже я неправильно вам сказал а вы неправильно поняли const std::string test = "bla1 bla2 bla100 bla123 bla500 bla999"; у меня не такая строка а несколько строк bla1 потом bla2 потом bla100 их несколько но цифры в конце обязательно
0
|
|
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
||||||
| 22.01.2015, 15:11 | ||||||
|
Игорь1986, Это лямбда-функция. Можно использовать
0
|
||||||
|
156 / 143 / 62
Регистрация: 08.09.2014
Сообщений: 1,220
|
|
| 22.01.2015, 15:13 [ТС] | |
|
ForEveR я вам благодарен конечно но у меня строка не такая как вы записали
const std::string test = "bla1 bla2 bla100 bla123 bla500 bla999"; у меня не такая строка а несколько строк bla1 потом bla2 потом bla100 их несколько но цифры в конце обязательно вот в принципе ваш код подойдет но я думаю может как то можно проще, дело в том что вы пишите на более высоком уровне для моего понимания
0
|
|
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
| 22.01.2015, 15:18 | |
|
Игорь1986, Ну так упростите, для своего понимания, в чем проблема? Пример вам дали, дальше вам и флаг в руки.
Не по теме: Это не фриланс, а вы не заказчик, чтобы подстраиваться под ваши условия, не точно описали условие задачи - ваши проблемы.
0
|
|
|
156 / 143 / 62
Регистрация: 08.09.2014
Сообщений: 1,220
|
||||||
| 22.01.2015, 15:18 [ТС] | ||||||
0
|
||||||
|
156 / 143 / 62
Регистрация: 08.09.2014
Сообщений: 1,220
|
|
| 22.01.2015, 15:31 [ТС] | |
|
Здраствуйте кто мне поможет по поводу такого вопроса, у меня есть строка, состоящая из символов и цифр но в конце строки всегда идет число(которое может быть 1 2 3 значным).
Тоесть строка 1-ккк5 строка2-ккп6 строка3-ккп9 строка4-к6кп10 и мне необходимо из строки выделить числа 6 9 10(причем в 4 строке только цифру 10).Поможите с примерчиком
0
|
|
|
3073 / 1411 / 425
Регистрация: 19.01.2009
Сообщений: 3,894
|
||||||
| 22.01.2015, 16:26 | ||||||
Сообщение было отмечено BRcr как решение
Решение
Игорь1986,
1
|
||||||
|
156 / 143 / 62
Регистрация: 08.09.2014
Сообщений: 1,220
|
||||||
| 22.01.2015, 16:40 [ТС] | ||||||
|
А можно разьяснить эти 2 строки
0
|
||||||
|
3073 / 1411 / 425
Регистрация: 19.01.2009
Сообщений: 3,894
|
|
| 22.01.2015, 16:45 | |
|
Игорь1986,1) начинаем с самого последнего символа строки к началу и для
каждого проверяем, является ли он числовым символом (вызов isdigit()). 2) если у нас есть цифровые символы (условие num < len-1), то он начинается с индекса num + 1, преобразуем строковое представление числа в int и возвращаем из функции. Если у нас нет цифровых символов, то возвращаем -1.
0
|
|
|
7804 / 6568 / 2988
Регистрация: 14.04.2014
Сообщений: 28,705
|
||||||
| 22.01.2015, 19:02 | ||||||
|
Я же тебе написал как сделать для отдельных строк:
0
|
||||||
|
Заблокирован
|
||||||
| 22.01.2015, 20:24 | ||||||
0
|
||||||
|
156 / 143 / 62
Регистрация: 08.09.2014
Сообщений: 1,220
|
|
| 22.01.2015, 20:28 [ТС] | |
|
Всем спасибо
0
|
|
|
156 / 143 / 62
Регистрация: 08.09.2014
Сообщений: 1,220
|
|||||||||||
| 23.01.2015, 09:37 [ТС] | |||||||||||
|
Проверил вылетает на 2 проходе по строке
если сделать так то выводит 0 вместо 10
0
|
|||||||||||
| 23.01.2015, 09:37 | |
|
Помогаю со студенческими работами здесь
40
Как правильно перевести std::wstring в std::string ? Запрошено преобразование от ‘const std::string*’ к нескалярному типу ‘std::string’
Строки через std::string Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|