AnsiString text=RichEdit1->Text;
int pos=text.Pos("09");
if (pos!=0)
{
RichEdit1->SelStart = pos-1;
RichEdit1->SelLength = 52;
RichEdit1->SelAttributes->Color=clBlue;
}
поиск и перемещение слова из мемо (или RichEdit)
Код:
но она находит только одну. а в тексте 09 много, и надо каждую попеременно выделить. и переместить в мемо2 (или RichEdit)
Код:
char *text = RichEdit1->Text.c_str();
while(text=strstr(text,"09"))
{
RichEdit1->SelStart = text-RichEdit1->Text.c_str();
RichEdit1->SelLength = 2;
RichEdit1->SelAttributes->Color=clBlue;
text+=2;
}
while(text=strstr(text,"09"))
{
RichEdit1->SelStart = text-RichEdit1->Text.c_str();
RichEdit1->SelLength = 2;
RichEdit1->SelAttributes->Color=clBlue;
text+=2;
}
А вы знаете, как вычисляется значение свойства Text?
Явно - нет, иначе бы обязательно сделали так
Код:
AnsiString Text = RichEdit1->Text.c_str();
for (const *pText = Text.c_str(), pos = NULL;
(pos = strstr (text,"09")) != NULL; pText += 2)
{
RichEdit1->SelStart = pos-RichEdit1->Text.c_str();
RichEdit1->SelLength = 2;
RichEdit1->SelAttributes->Color=clBlue;
}
for (const *pText = Text.c_str(), pos = NULL;
(pos = strstr (text,"09")) != NULL; pText += 2)
{
RichEdit1->SelStart = pos-RichEdit1->Text.c_str();
RichEdit1->SelLength = 2;
RichEdit1->SelAttributes->Color=clBlue;
}
Ибо каждый раз в цикле вычислять значение свойства пренакладно
А вы знаете, как вычисляется значение свойства Text?
Явно - нет, иначе бы обязательно сделали так
Код:
AnsiString Text = RichEdit1->Text.c_str();
for (const *pText = Text.c_str(), pos = NULL;
(pos = strstr (text,"09")) != NULL; pText += 2)
{
RichEdit1->SelStart = pos-RichEdit1->Text.c_str();
RichEdit1->SelLength = 2;
RichEdit1->SelAttributes->Color=clBlue;
}
for (const *pText = Text.c_str(), pos = NULL;
(pos = strstr (text,"09")) != NULL; pText += 2)
{
RichEdit1->SelStart = pos-RichEdit1->Text.c_str();
RichEdit1->SelLength = 2;
RichEdit1->SelAttributes->Color=clBlue;
}
Ибо каждый раз в цикле вычислять значение свойства пренакладно[/QUOTE]Ты сперва на свой код посмотри, перед тем, как кого либо критиковать.
5 операторов - 4 бага. Это уметь надо. :)
P.S. ошибся. 5 багов.