Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.04.14;
Скачать: CL | DM;

Вниз

Как убрать кавычки с начала и конца строки ?   Найти похожие ветки 

 
Spartak ©   (2003-04-02 08:11) [0]

Моя программа получает параметр командной строки в кавычках .
Например путь : c:\program Files\111\dd 234\ если написать без ковычек то полный путь не впишеться так как там есть пробелы !
а с кавычками моя функция не хочет работать !
Вопрос как можно убрать кавычки после получения коммандной строки ?


 
Dikobrazz ©   (2003-04-02 08:25) [1]

Используй функцию AnsiDequotedStr. Если есть кавычки - она их убирает, если нет - оставляет так.


 
HanIP   (2003-04-02 08:26) [2]

var
s:string;
begin
s:="c:\program....";
delete(s,1,1);
delete(s,length(s)-1,1);
end;


 
Spartak ©   (2003-04-02 09:25) [3]

HanIP спасибо но твой пример не убирает кавычки в конце строки !

Dikobrazz как использовать функцию AnsiDequotedStr ?


 
KPP   (2003-04-02 09:34) [4]

используй
s:=StringReplace(s,""","",[rfReplaceAll]);

function StringReplace(const S, OldPattern, NewPattern: string; Flags: TReplaceFlags): string;


 
spartak ©   (2003-04-02 09:54) [5]


я или гоню или ... ну не один пример не идёт ! или идёт но не так как надо ! если не трудно напишите полностью код как из строки
"c:\program Files\111\dd 234\" убрать кавычки !?


 
Kaban ©   (2003-04-02 09:59) [6]

> HanIP (02.04.03 08:26)
может не delete(s,length(s)-1,1), а delete(s,length(s),1)



 
Style   (2003-04-02 09:59) [7]

var
s: string;
begin
s := ""c:\program Files\111\dd 234\"";
s := copy(s,2,Length(s)-2);
Caption := s;


 
spartak ©   (2003-04-02 10:04) [8]

Всё всем огромное спасибо ! последний пример работает на отлично !



 
Spartak ©   (2003-04-02 10:37) [9]

всё ок ! тока код
var
s: string;
begin
s := ""c:\program Files\111\dd 234\"";
s := copy(s,2,Length(s)-2);
Caption := s;

убирает 1 символ в начале и 1 в конце ! независимо есть там или нет кавычек !
Как же всё таки функция AnsiDequotedStr работает ?

В моём премере конечно я решил эту проблему так как там у меня
всегда есть кавычки , но если вдруг кому нибудь понадобиться код
то этот точно не подойдёт ! Но всё равно спасибо всем :)


 
Kaban ©   (2003-04-02 10:48) [10]

а ты не знаешь, как проверить является ли первый символ кавычкой?
тяжелый случай...


 
Anatoly Podgoretsky ©   (2003-04-02 12:11) [11]

Spartak © (02.04.03 10:37)
Ответ тебе был дан абсолютно точный, именно так как ты и просил, а просил ты видимо неправильно.
Правильный вопрос был бы такой, "как убрать из строки S убрать кавычки?", хотф возможно и это не совсем правильный вопрос.


 
Spartak ©   (2003-04-02 12:52) [12]

Я уже разобрался ! большое всем спасибо!


 
panov ©   (2003-04-02 13:11) [13]

>Spartak
В Delphi5 нет функции AnsiDequotedStr,
а имеющаяся AnsiExtractQuotedStr - кривая.

Вот такую функцию можно написать за пару минут и не мучиться...

function UnQuotedStr(const aSrc: String;aQuotedStr: String="""): String;
var
tLen: Integer;
begin
Result := aSrc;
tLen := Length(Result);
if tLen<2 then Exit;

if (Result[1]=aQuotedStr) and (Result[tLen]=aQuotedStr) then
begin
Delete(Result,tLen,1);
Delete(Result,1,1);
end;
end;

Пример вызова:

ShowMessage(UnQuotedStr(""Тест""));
ShowMessage(UnQuotedStr("Тест1"));




Страницы: 1 вся ветка

Текущий архив: 2003.04.14;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.017 c
7-44470
JohnKorsh
2003-02-19 13:49
2003.04.14
Работа с последовательными портами.


6-44287
Dx_com
2003-02-19 20:15
2003.04.14
Смена IP и маски подсети в ХР или NT


1-44090
Непоседа
2003-04-02 15:31
2003.04.14
Подскажите как документе Worda, через OLE перейти на закладку


1-44166
BBCHa
2003-04-03 17:54
2003.04.14
Рамочка вокруг контрола как в Design-time


1-44144
Ш-К
2003-04-03 14:27
2003.04.14
Как от даты получить день недели?