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

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

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

 

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

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

тема: идентификация изменений в тексте.. запутафся.
 
 автор: _makar   (25.04.2006 в 17:00)   письмо автору
 
 

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

у меня вот какая тяжелая задача =)

на саите имеется текст, допустим $text_original
и его переводы $text_eng, $text_rus ..

если вносится изменение в текст ( оригинальный или нет ) то появляется сообщение о внесенных изменениях ( слово, или даже абзац содержащий его ) и в остальных его переводах подсвечиваются те предложеня или абзацы или еще какие поля текста соотетствующие модифицированному...
я предполагал изначально разбить текст на масcивы , потом если что сопоставлять их, но вот уже неделю без толку

очень Вам буду благодарен за помощь!!!!!!!

   
 
 автор: _makar   (26.04.2006 в 01:07)   письмо автору
 
   для: _makar   (25.04.2006 в 17:00)
 

нет никаких идей.. наводок? мне самому не осилить 8(

   
 
 автор: cheops   (26.04.2006 в 14:00)   письмо автору
 
   для: _makar   (25.04.2006 в 17:00)
 

Чего-то не очень понятно - текст на каком языке? Вы переводите его предложениями? Или речь идёт о переводе интерфейса сайта?

   
 
 автор: _makar   (26.04.2006 в 18:37)   письмо автору
 
   для: cheops   (26.04.2006 в 14:00)
 

дело в том что Другои Язык это тот же текст,,,, (( правильнее текст с одинаковыми "разметками" /для определения места модификаций/ и тем же ID только в другой таблице (т,е, выводится в зависмости от выбранного языка) .. )) это я так себе представляю процесс отображения текста на др, языке

теперь предположим что я создал переводы текста TXT_1 => TXT_1NL , TXT_1RU

т,е, 3 как бы взаимосвязанных текста

если внести изменение в любой из трех - два остальных получают "оповещение" в каких "раzметках" был изменен текст.
таким образом ответственный за другие языки сможет поправить его


ЕСЛИ КОНЕЧО ТАКОЕ ВОЗМОЖНО.... НО ТАКОВ СМЫСЛ
как легче и лучше незнаю =/

Вот схема в PDF http://www.psmons.be/schema.pdf


**интерфас сайта я собрал в отдельнoм фаилe в массив для удобства перевода-редактирования. обсуждаю в соседней теме "запись асс.массива в файл" °)

   
 
 автор: cheops   (28.04.2006 в 00:39)   письмо автору
 
   для: _makar   (26.04.2006 в 18:37)
 

Обычно поступают следующим образом, действительно организуют ассоциативный массив вида
<?php
  $messages
['en'] =  array(
                  
"language" => "English",
                   ...
                   }
  
$messages['ru'] =  array(
                  
"language" => "Русский",
                   ...
                   }
?>

А для вывода используется функция
<?php
  
function msg($text)
  {
    global 
$messages;
    return 
$messages[$_SESSION['language']][$text];
  }
?>

В элемент сессии $_SESSION['language'] помещается сокращения языка "en" или "ru". Тогда сайт можно создавать на одном языке (в данном случае английском) - там где применяется текст осуществляется вызов функции msg
<?php
  
echo msg("English");
?>

В зависимости от содержимого переменной $_SESSION['language'] будет выведена либо ангийская, либо русская фраза.

   
 
 автор: _makar   (07.05.2006 в 18:29)   письмо автору
 
   для: cheops   (28.04.2006 в 00:39)
 

да, очень много мануалов на эту тему... но вот я уже глубоко зашёл, и переделывать всё как-то не охочится )

Ну, в общем с идентификацией я потихоньку разбираюсь......................... очень потихоньку. только всё ещё пока не то -0 а во вторник сдавать. паника!

я подумал будет легче если текст изначально вносить по предложению на строчку, тогда удобнее занести его в арей ну а потом сравнить с другим арейем и вот вам результат 8) вобщемто.

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

как так можно? вносить таги типа \n, \t, <br> и тоже считать в строке?
или новые символы?

не имея понятия о рег.выр. открыл новую тему
Заранее Спасибо

   
 
 автор: _makar   (27.04.2006 в 23:09)   письмо автору
 
   для: cheops   (26.04.2006 в 14:00)
 

идея! 8)

разбить текст предложения!..

потом предложения засунуть в массивы.
изменив предложение на одном языке -> подсветить на других языках те у кот. такой же ключ

не подскажите рег. выражения?

   
 
 автор: _makar   (07.05.2006 в 18:02)   письмо автору
 
   для: _makar   (27.04.2006 в 23:09)
 

... пожалуста :)

   
 
 автор: cheops   (07.05.2006 в 22:37)   письмо автору
 
   для: _makar   (27.04.2006 в 23:09)
 

А предожения хотите по какому критерию разбивать? По переводу строки? Тогда можно поступить следующим образом
<?php
  $arr 
preg_split('|[\r\n]+|',$text);
  echo 
"<pre>";
  
print_r($arr);
  echo 
"</pre>";
?>

   
Rambler's Top100
вверх

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