5 / 5 / 1
Регистрация: 18.01.2010
Сообщений: 136
1

Найти все подстроки в строке

25.05.2012, 09:39. Показов 9496. Ответов 1
Метки нет (Все метки)

Delphi
1
2
3
4
5
6
var Str1, Str2: String; P: Integer; 
{ ... } 
Str1:='Hi! How do you do?'; 
Str2:='do'; 
P:=Pos(Str2, Str1);
//P = 9
При помощи оператора POS нахожу первое совпадение текста. А как сделать, чтобы нашлись все совпадения?
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.05.2012, 09:39
Ответы с готовыми решениями:

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

Найти позицию входжения подстроки в строке
у меня такая проблема: есть лог файл(примерно): name pos1 pos2 pos3 pos aa 0 1 2 ...

Найти все подстроки в строке
Есть строка, следующего вида: ...<div class="b-list__item"><a...

Найти все возможные подстроки в строке
Найти все возможные подстроки в строке начиная с конца.

1
13088 / 5869 / 1706
Регистрация: 19.09.2009
Сообщений: 8,808
25.05.2012, 09:50 2
В модуле StrUtils есть функция PosEx(). Она работает наподобие функции Pos(), но с помощью неё можно продолжать поиск с заданной позиции.
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
uses
  StrUtils;
 
procedure TForm1.Button1Click(Sender : TObject);
var
  P, Len : Integer;
...
begin
...
  //Длина шаблона.
  Len := Length('<шаблон, который ищем>');
  P := PosEx('<шаблон, который ищем>', '<Строка в которой ищем шаблон>', 1);
  while P > 0 do begin
    //Здесь обрабатываем очередной найденный шаблон.
    //...
    //Перескакиваем через текущий найденный шаблон и ищем следующий шаблон.
    P := PosEx('<шаблон, который ищем>', '<Строка в которой ищем шаблон>', P + Len);
  end;
end;
3
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.05.2012, 09:50
Помогаю со студенческими работами здесь

Найти в строке все повторяющиеся подстроки
может есть какой-нибудь встроенный метод? ну то есть SPMRVBVBBBURQGIBDUGRNICJRVUAXSSR...

С использованием функции найти все вхождения подстроки в строке
Всем логимыслящим Большой Привет! Помогите меня избавить от страданий написать программу...Лайками...

Найти и заменить в исходной строке все вхождения заданной подстроки
Найти в исходной строке все вхождения (но не более девяти) заданной подстроки и заменить их на...

Найти в исходной строке все вхождения заданной подстроки и заменить их на другую строку
Найти в исходной строке все вхождения (но не более девяти) заданной подстроки и заменить их на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru