Без регулярного выражения.
Данный пример вырежет
Цитата:
12345
CODE:
string s=cuttext( "qwert12345asdfg","rt", "as");
messagebox (s);
messagebox (s);
Первый параметр - строка с которой вырезать надо
Второй - часть текста после которого идет вырезаемый текст. Есть пустая строка, с начала.
Третий - часть текста перед которым идет вырезаемый текст. Если пустая, до конца.
Второй параметр ищется первый сначала.
Второй первый с конца.
=====================
Второй вариант использования cuttext
Данный пример вырежет
Цитата:
234
CODE:
string s=cuttext( "qwert12345asdfg","rt", 1, "as", -1);
messagebox (s);
messagebox (s);
Первый параметр - строка с которой вырезать надо
Второй - часть текста после которого идет вырезаемый текст. Есть пустая строка, с начала.
Третий - смещение начала вырезаемого текста на количество символов.
Четвертый - часть текста перед которым идет вырезаемый текст. Если пустая, до конца.
Пятый - смещение окончания вырезаемого текста на количество символов.
=====================
Так же есть возможность первым, не обязательным параметром указать правила вырезания текста.
0 - Будет вырезан текст начиная от первого нахождения сверху ОТ ЧЕГО, кончая первым нахождением снизу ДО ЧЕГО
Больше 0 - Будет вырезан Указанный Номер Фрагмента начиная от нахождения сверху ОТ ЧЕГО, кончая нахождением сверху ДО ЧЕГО
Меньше 0 - Будет вырезан Указанный Номер Фрагмента начиная от нахождения снизу ОТ ЧЕГО, кончая нахождением снизу ДО ЧЕГО
Пояснение
0 - Вырежет максимальный текст ОТ ДО
2 - Вырежет Второй фрагмент ОТ ДО, начиная сверху
-2 Вырежет Второй фрагмент ОТ ДО, начиная снизу
CODE:
string
T="В этом тексте вырежем +++111-- и еще +++222-- также +++333-- и напоследок +++444-- и еще +++555-- не забудем";
string s;
messagebox (T);
s=cuttext(T, "+++", "--");// 111-- и еще +++222-- также +++333-- и напоследок +++444-- и еще +++555
messagebox (s);
s=cuttext(0, T, "+++", "--");// 111-- и еще +++222-- также +++333-- и напоследок +++444-- и еще +++555
messagebox (s);
s=cuttext(1, T, "+++", "--");// 111
messagebox (s);
s=cuttext(2, T, "+++", "--");// 222
messagebox (s);
s=cuttext(-1, T, "+++", "--");// 555
messagebox (s);
s=cuttext(-2, T, "+++", -2, "--", 2);// ++444--
messagebox (s);
T="В этом тексте вырежем +++111-- и еще +++222-- также +++333-- и напоследок +++444-- и еще +++555-- не забудем";
string s;
messagebox (T);
s=cuttext(T, "+++", "--");// 111-- и еще +++222-- также +++333-- и напоследок +++444-- и еще +++555
messagebox (s);
s=cuttext(0, T, "+++", "--");// 111-- и еще +++222-- также +++333-- и напоследок +++444-- и еще +++555
messagebox (s);
s=cuttext(1, T, "+++", "--");// 111
messagebox (s);
s=cuttext(2, T, "+++", "--");// 222
messagebox (s);
s=cuttext(-1, T, "+++", "--");// 555
messagebox (s);
s=cuttext(-2, T, "+++", -2, "--", 2);// ++444--
messagebox (s);
Если в строке только одно вхождение:
То есть к примеру нам надо вырезать участок кода относящийся к фрагменту:
CODE:
__name">Баскетбол
в строке
CODE:
class="line-grid-header__name champ-header__name">Баскетбол. Австралия. NBL. Мужчины.</h2></div><button _ngcontent-mobile-ng-cli-c107="" class="champ-header__button">
И оно там одно, надо указать смещение назад минимум на 1 символ больше чем первая искомая подстрока.
Цитата:
string T="class=^"line-grid-header__name champ-header__name^">Баскетбол. Австралия. NBL. Мужчины.</h2></div><button _ngcontent-mobile-ng-cli-c107=^"^" class=^"champ-header__button^">";
messagebox (T);
string s=cuttext(0, T, "__name^">Баскетбол", -18, "__name^">Баскетбол", 50);
messagebox (s);
messagebox (T);
string s=cuttext(0, T, "__name^">Баскетбол", -18, "__name^">Баскетбол", 50);
messagebox (s);