Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Типограф: обработка кавычек
 
 автор: antf   (05.03.2007 в 14:05)   письмо автору
 
 

Здравствуйте. В аттаче приведен небольшой фрагмент кода типографа, в котором кавычки заменяются на елочки

Сейчас типограф работает по такой схеме
- кавычка перед словом заменяется на «
- кавычка после слова заменятеся на »
- в других случаях кавычка заменяется на « и подсвечивается желтым цветом, это означает, что она поставлена неправильно.

Хотелось бы научить типограф соединять кавычки со словами. Вот конкретный пример. Как обработать закрывающую кавычку после слова "типограф"? А именно, убрать пробел, присоединив ее к предыдущему слову, заменить кавычку на », подсветить ее зеленым цветом.

Заранее спасибо.

   
 
 автор: cheops   (05.03.2007 в 20:33)   письмо автору
 
   для: antf   (05.03.2007 в 14:05)
 

Хм... что-то не очень понятно, особенно про пробел.

   
 
 автор: antf   (05.03.2007 в 22:23)   письмо автору
 
   для: cheops   (05.03.2007 в 20:33)
 

Я хотел бы присоединить закрывающую кавычку к слову "типограф" Хотел сделать как здесь (типограф А. Лебедева)
Включите подстветку:
http://www.artlebedev.ru/tools/typograf/preferences/
Перейдите на стр-цу типографа
http://www.artlebedev.ru/tools/typograf/
Введите фразу
"Типограф  " - программа предпечатной обработки текста.

Нажмите кнопку оттипографить.

   
 
 автор: antf   (05.03.2007 в 22:43)   письмо автору
 
   для: antf   (05.03.2007 в 22:23)
 

Основное назначение программы - замена английских кавычек на русские елочки. Методику определения разворота кавычек я уже описал: кавычка перед словом заменяется на « после - на &raquo. Ошибочные случаи подсвечиваются желтым. А теперь мне бы хотелось добавить в программу исправление некоторых ошибок набора. Выше приведена фраза, где между словом и закрывающей кавычкой ошибочно вставлен пробел. Соответсвенно регулярное выражение должно:

- определить тип кавычки или разворот;
- убрать пробел (сначала надо определить разворот, чтобы знать с какой стороны пробел убирать);

В принципе и без этого будет нормально: мне кажется подобные ошибки достаточно указать подсветкой, а верстальщик сам их устранит вручную. Мне просто интересно как это сделать, ведь у Лебедева подобное исправление происходит. Хорошая головоломка.

   
 
 автор: cheops   (06.03.2007 в 01:10)   письмо автору
 
   для: antf   (05.03.2007 в 22:43)
 

Исправьте выражение '/([\w\d]+)\"/' на '/([\w\d]+)[\s]*\"/' - это должно убрать пробел.

   
 
 автор: antf   (06.03.2007 в 10:10)   письмо автору
 
   для: cheops   (06.03.2007 в 01:10)
 

Так просто %) Не ожидал... Спасибо. А я тут думал как тип предыдущей кавычки анализировать :)

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования