InString с конца

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
PavelNK
Старожил
Сообщения: 279
Зарегистрирован: 15 Март 2011, 8:02

InString с конца

Сообщение PavelNK »

Если строка достаточно большая, то работать будет ооооочень медленно.
С InString будет работать гораздо быстрее
Shur
Ветеран
Сообщения: 384
Зарегистрирован: 02 Июль 2011, 18:49

InString с конца

Сообщение Shur »

PavelNK писал(а): А не лучше ли использовать функцию StrPos?
PavelNK писал(а): С InString будет работать гораздо быстрее
Любой каприз...

Код: Выделить всё

MyInstringNK PROCEDURE(pat STRING, str STRING, step LONG, pos LONG),LONG
   CODE
     if step > 0 
        RETURN(Instring(pat,str,step,pos))
     end   
     len1# = len(str)
     len2# = len(pat)
     if len1# < len2#
        RETURN(0)
     end      
     loop i# = len1# to len2# by -1
          if str[i#-len2#+1:i#] = pat
              RETURN(i#-len2#+1)
          end
     end
     RETURN(0)
Ответить