Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
MaxRGB
1

Выделение слов из словаря

17.02.2011, 14:49. Просмотров 2048. Ответов 17
Метки нет (Все метки)

Имеется два входных файла – файл_с_текстом и файл_словаря.
Файл_с_текстом содержит текст в виде последовательностей текстовых строк, разделенных стандартным разделителем строки.
Файл_словаря содержит N строк, каждая из которых содержит ровно одно слово.
Необходимо создать программу, создающую корректный HTML_файл, содержащий весь текст из файла_с_текстом в котором помечены жирным и наклонным шрифтом все слова из файла_словаря. HTML_файл должен отображаться в любом Internet-браузере корректно, показывая весь текст, с выделением указанных слов.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.02.2011, 14:49
Ответы с готовыми решениями:

выделение слов
помогите из текстового файла выделить слова и записать их в другой файл, каждое...

Выделение цветом слов
Привет! Нужно выделить цветом поисковую фразу. Все нормально работает, только...

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

Поиск стоп слов в тексте и выделение их тегом
Есть массив со словами как найти их все присутствующие в тексте слова из...

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

17
Malme
0 / 0 / 0
Регистрация: 04.08.2011
Сообщений: 2
07.08.2011, 15:10 2
В чем проблема? Считывает два файла, в цикле пробегаете по словарю и регэкспом отмечаете слова в файле с текстом
0
Malme
0 / 0 / 0
Регистрация: 04.08.2011
Сообщений: 2
07.08.2011, 15:10 3
В чем проблема? Считывает два файла, в цикле пробегаете по словарю и регэкспом отмечаете слова в файле с текстом
0
edok
0 / 0 / 0
Регистрация: 22.11.2012
Сообщений: 8
22.11.2012, 10:01 4
Цитата Сообщение от MaxRGB Посмотреть сообщение
Имеется два входных файла – файл_с_текстом и файл_словаря.
Файл_с_текстом содержит текст в виде последовательностей текстовых строк, разделенных стандартным разделителем строки.
Файл_словаря содержит N строк, каждая из которых содержит ровно одно слово.
Необходимо создать программу, создающую корректный HTML_файл, содержащий весь текст из файла_с_текстом в котором помечены жирным и наклонным шрифтом все слова из файла_словаря. HTML_файл должен отображаться в любом Internet-браузере корректно, показывая весь текст, с выделением указанных слов.
а можно листинг а то что то не получается..)) + к этому выбор файла сделать через кнопку обзора
PHP
1
<input type="file" name="some_var" value="" />
и чтоб он выводил сперва текст рядом словарь и потом что получилось =) заранее благодарен
0
Alex_Ander
22.11.2012, 10:10
  #5

Не по теме:

PHP
1
in_array()
?

0
edok
0 / 0 / 0
Регистрация: 22.11.2012
Сообщений: 8
22.11.2012, 11:07 6
все равно пока не вижу полной картины, совсем начинающий
PHP
1
2
3
4
5
6
7
8
9
10
11
12
<?php
$people = array("Peter", "Joe", "Glenn", "Cleveland");   ..как сюда впихнуть словарь?)  
 
if (in_array("Glenn",$people))
  {
  echo "Match found";
  }
else
  {
  echo "Match not found";
  }
?>
0
Alex_Ander
Заблокирован
22.11.2012, 11:33 7
Цитата Сообщение от edok Посмотреть сообщение
все равно пока не вижу полной картины, совсем начинающий
PHP
1
2
3
4
5
6
7
8
9
10
11
12
<?php
$people = array("Peter", "Joe", "Glenn", "Cleveland");   ..как сюда впихнуть словарь?)  
 
if (in_array("Glenn",$people))
  {
  echo "Match found";
  }
else
  {
  echo "Match not found";
  }
?>
PHP
1
file()
1
edok
0 / 0 / 0
Регистрация: 22.11.2012
Сообщений: 8
22.11.2012, 18:11 8
Цитата Сообщение от edok Посмотреть сообщение
Имеется два входных файла – файл_с_текстом и файл_словаря.
Файл_с_текстом содержит текст в виде последовательностей текстовых строк, разделенных стандартным разделителем строки.
Файл_словаря содержит N строк, каждая из которых содержит ровно одно слово.
Необходимо создать программу, создающую корректный HTML_файл, содержащий весь текст из файла_с_текстом в котором помечены жирным и наклонным шрифтом все слова из файла_словаря. HTML_файл должен отображаться в любом Internet-браузере корректно, показывая весь текст, с выделением указанных слов.

а можно листинг а то что то не получается..)) + к этому выбор файла сделать через кнопку обзора
PHP
1
<input type="file" name="some_var" value="" />
и чтоб он выводил сперва текст рядом словарь и потом что получилось =) заранее благодарен
чет не фига не получается, может поможете с полным листингом )? с меня + в любом случае Alex_Ander
0
alpex
600 / 575 / 103
Регистрация: 16.07.2012
Сообщений: 1,761
22.11.2012, 20:07 9
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
    $string_file = file_get_contents('string.txt');
    $string_file = explode('|', $string_file);
    
    $array_file = file('array.txt', FILE_IGNORE_NEW_LINES);
    
    foreach ($string_file as $item){
        if (in_array($item, $array_file))
            echo '<strong><i>' . $item . '</i></strong>';
        else
            echo $item;
        echo '<br />';
    }
Добавлено через 1 минуту
string.txt
Код
orange|apple|kiwi|chery|banan
array.txt
Код
apple
banan
1
edok
0 / 0 / 0
Регистрация: 22.11.2012
Сообщений: 8
22.11.2012, 20:39 10
что то не работает точнее результата почему то не видать в браузере выводит string.txt в столбик))

вопрос
PHP
1
 $string_file = explode('|', $string_file);
заменить на
PHP
1
 $string_file = explode(' ', $string_file);
то она будет разделять слова пробелами?)
0
alpex
600 / 575 / 103
Регистрация: 16.07.2012
Сообщений: 1,761
22.11.2012, 20:45 11
я проверял у меня все работает
Цитата Сообщение от edok Посмотреть сообщение
то она будет разделять слова пробелами?)
да там указывается разделитель

Добавлено через 2 минуты
оно и выводит в столбик, только те слова корые есть в array.txt выводятся курсивом и жирные
0
edok
0 / 0 / 0
Регистрация: 22.11.2012
Сообщений: 8
22.11.2012, 21:03 12
у меня почему то выводит стринг!!

а как сделать чтоб выводило весь стринг без форматирования и помечать жирным совпадающие слова из словаря..
пока что выводит просто стринг столбом
0
Миниатюры
Выделение слов из словаря  
alpex
600 / 575 / 103
Регистрация: 16.07.2012
Сообщений: 1,761
22.11.2012, 21:11 13
вы хотите что бы выводило так?
orange|apple|kiwi|chery|banan
0
edok
0 / 0 / 0
Регистрация: 22.11.2012
Сообщений: 8
22.11.2012, 21:24 14
в моем случае разделитель будет пробел и думаю будет выглядеть так

orange apple kiwi chery banan
0
alpex
600 / 575 / 103
Регистрация: 16.07.2012
Сообщений: 1,761
22.11.2012, 21:34 15
PHP
1
2
3
4
5
6
7
8
9
10
11
12
$string_file = file_get_contents('string.txt');
    $string_file = explode(' ', $string_file);
    $array_file = file('array.txt', FILE_IGNORE_NEW_LINES);
    
    $out = '';
    foreach ($string_file as $item){
        if (in_array($item, $array_file))
            $out .= '<strong><i>' . $item . '</i></strong> ';
        else
            $out .= $item . ' ';
    }
    echo trim($out);
Добавлено через 31 секунду
хотя наверное через str_replace получше будет
0
edok
0 / 0 / 0
Регистрация: 22.11.2012
Сообщений: 8
22.11.2012, 21:37 16
Спасибо вот только одного не могу понять
PHP
1
$out .= '<strong><i>' . $item . '</i></strong> ';
не вижу в браузере в чем может быть проблема?!
0
alpex
600 / 575 / 103
Регистрация: 16.07.2012
Сообщений: 1,761
22.11.2012, 21:45 17
PHP
1
2
3
4
5
6
7
8
9
10
$string_file = file_get_contents('string.txt');
    $array_file = file('array.txt', FILE_IGNORE_NEW_LINES);
    
    $edit = array();
    foreach ($array_file as $item)
        $edit[] = '<strong><i>' . $item . '</i></strong>';
 
    $out = str_replace($array_file, $edit, $string_file);
    
    echo $out;
Добавлено через 1 минуту
не знаю я смотрел в хроме, сафари, експлоуере все нормально отображается
может DOCTYPE нужно сделать
0
edok
0 / 0 / 0
Регистрация: 22.11.2012
Сообщений: 8
22.11.2012, 21:59 18
Цитата Сообщение от alpex Посмотреть сообщение
может DOCTYPE нужно сделать
и с доктайпом и без него уже пробывал)

ха теперь выводит как хотелось ))) только одно но там 2 слова должны быть жирными так как они в словаре , а почему то выделяет только последнее)))
0
22.11.2012, 21:59
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.11.2012, 21:59

Как поменять выделение некоторых слов курсивом на жирное выделение
Здравствуйте. Есть вордовский документ состоящий из 1100 страниц.Подскажите...

Алгоритм проверки слов из словаря
Добрый день. Создал вот такую программку, которая будет находить в исходном...

Разработка клавиатуры с подбором слов со словаря
Хотел бы узнать кто нибудь делал клавиатуру? например если я пишу &quot;пара&quot;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru