Текущий архив: 2003.05.29;
Скачать: CL | DM;
Вниз
Обрезать текст перед/после слэша. Найти похожие ветки
← →
Sensor (2003-05-17 16:06) [0]Народ подскажите plz!
Скажем так: у мя есть на форме 3 эдита и одна кнопка. В едит1 тест такой: test1/test2 . Мне надо чтобы при нажатии на кнопку в едит2 был текст ДОслеша ( test1), а в эдит3 тест после слэша ( test2).
Я достал кусок исходника:
...
var
i: integer;
b: boolean;
begin
b:=false;
edit2.text:="";
i:=1;
repeat
if edit1.text[i] <> "/" then edit2.text:=edit2.text + edit1.text[i]
else
b:=true;
i:=i+1;
until b or (i=length(edit1.text));
end;
...
Но он обрезает текст только ДО слэша, (в эдит2 пишется только test1), а вот как сделать, чтобы он обрезал и так и так - я не знаю. Попыхавшись с исходниклм тоже ничего не получилось =(.
Кто знает, подскажите plzzzz
← →
Skier (2003-05-17 16:10) [1]edit2.Text := Copy(edit1.Text, 1, Pos("/", edit1.Text) - 1);
edit3.Text := Copy(edit1.Text,
Pos("/", edit1.Text) + 1,
Length(edit1.Text));
← →
Song (2003-05-17 16:12) [2]Edit2.Text:=Copy(Edit1.Text,1,Pos("/",Edit1.Text)-1);
Edit3.Text:=Copy(Edit1.Text,Pos("/",Edit1.Text)+1,Length(Edit1.Text));
← →
Holy (2003-05-17 16:13) [3]edit2.text:=copy(edit1.text,1,Pos("/",edit1.text)-1);
edit3.text:=copy(edit1.text,Pos("/",edit1.text)+1,length(edit1.text)-Pos("/",edit1.text));
Вот так. Возможно, что вместо едит1 придется использовать строку и возможно имеет место ошибка с позицией (вычитание и прибавление 1)
← →
Skier (2003-05-17 16:14) [4]Однако, информасомы ! :))
← →
Skier (2003-05-17 16:16) [5]Упс ошибся !
для edit3.text см. Holy © (17.05.03 16:13)
← →
Sensor (2003-05-17 16:24) [6]Гы, спасибон большой =)
Поражаюсь,я всего минут 15 назад запостил этот вопрос, ауже дали ответ =))
← →
Song (2003-05-17 16:27) [7]2Skier © (17.05.03 16:14)
>>для edit3.text см. Holy © (17.05.03 16:13)
Не обязательно. Читаем хэлп:
function Copy(S; Index, Count: Integer): string;
function Copy(S; Index, Count: Integer): array;
Description
S is an expression of a string or dynamic-array type. Index and Count are integer-type expressions. Copy returns a substring or sub array containing Count characters or elements starting at S[Index].
If Index is larger than the length of S, Copy returns an empty string or array.
If Count specifies more characters or array elements than are available, only the characters or elements from S[Index] to the end of S are returned.
Note: When S is a dynamic array, Copy can only be used as a parameter in a call to a procedure or function that expects an array parameter. That is, it acts like the Slice function when working with dynamic arrays.
← →
Skier (2003-05-17 16:31) [8]>Song © (17.05.03 16:27)
А, действительно. Не обратил внимания...
Страницы: 1 вся ветка
Текущий архив: 2003.05.29;
Скачать: CL | DM;
Память: 0.46 MB
Время: 0.007 c