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

Вниз

опознание одинарной кавычки   Найти похожие ветки 

 
Wolffgang   (2004-12-13 15:27) [0]

Здраствуйте.
Пишу что-то типа парсинга.
преобразование типа
if a1="q" then a2:=...;

if a1=""" then <- воспринимает как текст

как научить отличать одинарную кавычку?


 
KSergey ©   (2004-12-13 15:28) [1]

Удвоить ее


 
Wolffgang   (2004-12-13 15:36) [2]

насчет удвоить я в курсе, фишка в том что это нужно для работы с файлом, где есть и одинарные, и двойные кавычки
т.е. я сначала читаю в массив все знаки, потом обрабатываю;
встречаются и a=", и a="", т. е. простое удвоение не катит, нужно другое представление знака


 
KSergey ©   (2004-12-13 15:42) [3]

Я нифига не понял. Зачем какое-то другое представление? Одинарные кавычки внутри строки надо УДВАИВАТЬ, количество их, при каждом вхождении, понимаешь?

PS
Так и быть
if a1="""" then


 
-=SS=- ©   (2004-12-13 15:42) [4]

If a1 = #39 // если a1 : Char; и
if a1[2] = #39 // если a1 : String; где 2 - номер символа


 
Algol   (2004-12-13 15:42) [5]

Кажется вы неправильно делаете парсинг. Если есть начало литерала заключенного в кавычки, то есть и его конец. Этот конец нужно найти, все двойные кавычки внутри него нужно считать одинарной кавычкой.


 
KSergey ©   (2004-12-13 15:43) [6]

> внутри строки

Внутри константы-строки, имелось в виду


 
Wolffgang   (2004-12-13 15:54) [7]

>-=SS=-
именно

спасибо всем. даже не ожидал такого внимания :P



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

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

Наверх




Память: 0.48 MB
Время: 0.053 c
6-1097733021
Dr. Genius
2004-10-14 09:50
2004.12.26
TDriveType, dtFixed, dtNetWork


1-1103014114
Delphi5.01
2004-12-14 11:48
2004.12.26
выезжающее окошко как это сделано в WinAmp-е


4-1100453172
dolphin
2004-11-14 20:26
2004.12.26
список имен папок и файлов


3-1101735933
Chery
2004-11-29 16:45
2004.12.26
Как узнать путь к БД: МуСКЛ, драйвер MyODBC-3.51.10.


4-1100379236
Velzevul
2004-11-13 23:53
2004.12.26
Hard disk size for win32