Замена слов в тексте
Замена слов в тексте
Как правильно сделать замену слов в большом тексте. Например: нужно заменить слово 'уникальное' на 'особое', а следующее слово 'уникальное' в этом же тексте на 'специальное' и т.д. Если делать замену через функцию str_replace, то будут заменятся все слова на первый вариант.
Re: Замена слов в тексте
Код: Выделить всё
$text = "Это уникальное словосочетание содержит уникальное слово";
$text = preg_replace('/уникальное/', 'особое', $text, 1);
$text = preg_replace('/уникальное/', 'специальное', $text, 1);
echo $text . "\n";
Re: Замена слов в тексте
Спасибо работает!
Re: Замена слов в тексте
Ты случаем не рандомизатор текста пишешь? а то интересует тема эта. Может поделишься?)sapogi77 писал(а): ↑21 авг 2018, 13:43Как правильно сделать замену слов в большом тексте. Например: нужно заменить слово 'уникальное' на 'особое', а следующее слово 'уникальное' в этом же тексте на 'специальное' и т.д. Если делать замену через функцию str_replace, то будут заменятся все слова на первый вариант.
Re: Замена слов в тексте
Вам не обязательно писать рандомизатор с нуля можно использовать готовый код из интернета - вот например PHP-скрипт рандомизатора текстов этот код можно использовать для написания своего скрипта под Хуман.serapheem писал(а): ↑23 авг 2018, 15:38Ты случаем не рандомизатор текста пишешь? а то интересует тема эта. Может поделишься?)sapogi77 писал(а): ↑21 авг 2018, 13:43Как правильно сделать замену слов в большом тексте. Например: нужно заменить слово 'уникальное' на 'особое', а следующее слово 'уникальное' в этом же тексте на 'специальное' и т.д. Если делать замену через функцию str_replace, то будут заменятся все слова на первый вариант.
Re: Замена слов в тексте
Это не совсем то, нужно рандомизировать не свой, а чужой текст. Скажем взяли новость какую то с сайта рандомизировали её и запостили к себе). Вот человек судя по всему именно так и делает))).Support писал(а): ↑23 авг 2018, 15:44Вам не обязательно писать рандомизатор с нуля можно использовать готовый код из интернета - вот например PHP-скрипт рандомизатора текстов этот код можно использовать для написания своего скрипта под Хуман.
Re: Замена слов в тексте
Это уже не рандомизатор, а синонимайзер будет. ))) Для такой рандомизации нужны словари синонимов. Чем Больше слов будет в словарях тем более уникальный текст будет получаться. Можно конечно использовать и онлайн словари причём прямо из скрипта, но тут вопрос в том в каких масштабах вы будете работать. На крайний случай можно работать сразу с 10-ком таких словарей, что бы меньше банили если они вообще банят. Опять таки прокси и т.д.
ТО есть алгоритм прост:
1. Получили некий текст.
2. для удобства разбили его на предложения.
3. потом разбили на слова.
4. какой то процент слов заменили через словари синонимов
5. собрали текст обратно
6. прогнали через проверку уникальности текста
7. если уникальность низкая опять прогнали через синонимы
8. итак пока не получили текст нужной уникальности.
При этом качество текста на выходе будет зависеть от качества словарей синонимов.
Re: Замена слов в тексте
Кстати можно также использовать уже готовый код синонимайзера ну или использовать уже готовые онлайн сервисы для синонимизации .
Только тут опять таки надо понимать, что нормальный текст будет только если у вас грамотно будут подобраны синонимы.
Только тут опять таки надо понимать, что нормальный текст будет только если у вас грамотно будут подобраны синонимы.
Re: Замена слов в тексте
Это то что надо.
Re: Замена слов в тексте
По поводу синонимайзеров и получения уникального текста. Как вариант можно использовать переводной текст. Только нужно понимать что родственные языки переводятся максимально читабельно.
Делали подобный пример уже Скрипт XHE для наполнения сайта контентом, используя гугль переводчик.
Делали подобный пример уже Скрипт XHE для наполнения сайта контентом, используя гугль переводчик.
http://x-scripts.com/
Код: Выделить всё
<?php
$xhe_host ="127.0.0.1:7010";
require("../Templates/xweb_human_emulator.php");
$browser->navigate("http://x-scripts.com");
$app->quit();?>