Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

опознание одинарной кавычки [D6]


Wolffgang ©   (2004-12-13 15:27:00) 

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

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

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


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

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

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


KSergey   (2004-12-13 15:43:00) [2]

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

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


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

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

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


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

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


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

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


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

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


KSergey   (2004-12-13 15:28:00) [7]

Удвоить ее


Наверх

Титульная страница Поиск, карта сайта Написать письмо