Кибор » Кибор - Интегрированная среда разработки ботов » Вопросы и решение проблем » Как вытащить из текста только цифры?

Страниц (1): [1]
 

1. ScrollLock27 - 27 Июня, 2018 - 06:43:29 - перейти к сообщению
Есть текст типа: "1/20" и "20/20", необходимо распознать 1-е число, но если оно однозначное, то в область распознавания попадает символ "/". Если выбрать распознать только цифры, то он распознает ее как "7".
В общем, как сделать чтобы при распознании исключался этот знак чтоб можно было преобразовать в int.
Да и в принципе, как можно из текстовой строки вытащить цифры?
2. Kibor - 27 Июня, 2018 - 07:12:45 - перейти к сообщению
А почему не ограничить зону поиска до /

Ну если просто обрезать, то

 Цитата:
char Text[100];
readtext (NUM | MARK, #Text[0], 8, 1, -1, -1, -1, -1, -1, 0, -1, 41, 189, 71, 205, -1);

int siz=size(#Text[0]);
for (int sn=0; sn<siz; sn++)
{
if (Text[sn]=='/')Text[sn]=0;
}
string SText=format(#Text[0]);
messagebox (SText);
3. ScrollLock27 - 27 Июня, 2018 - 07:39:24 - перейти к сообщению
 Kibor пишет:
А почему не ограничить зону поиска до /

Он смещается в зависимости от длины первого числа. Задаешь область 2 символа и если 1-е число однозначное (1-9), то символ / попадает в область и распознается как 7, если указать
только NUM.

 Kibor пишет:
char Text[100];
readtext (NUM | MARK, #Text[0], 8, 1, -1, -1, -1, -1, -1, 0, -1, 41, 189, 71, 205, -1);

int siz=size(#Text[0]);
for (int sn=0; sn<siz; sn++)
{
if (Text[sn]=='/'ПодмигиваниеText[sn]=0;
}
string SText=format(#Text[0]);
messagebox (SText);


Я так понял, он обрезает текст до "/"?
4. Kibor - 27 Июня, 2018 - 07:42:50 - перейти к сообщению
 ScrollLock27 пишет:
Я так понял, он обрезает текст до "/"?

да. что собственно и надо было.
если надо 2 числа узнать, немного переделать.

Powered by ExBB FM 1.0 Final