Помощник
|
Обработка текст |
Free_hb
|
Сообщение
#1
|
||
|
|
||
|
|||
ZhukV |
16.11.2010, 10:16;
Ответить: ZhukV
Сообщение
#2
|
|
Есть несколько вариантов.
(тернарный условный опредатор); [PHP]$text = "Пока жду я ответа, хочу чтоб ты"; $text .= $x == 1 ? "познал" : 'позналa'; $text .= "то, о чём не знаю я";[/PHP] Вот еще один вариатнт на мой взляд лучше: [PHP]$end = $x == 1 ? "a":""; $text = printf("Пока жду я ответа, хочу чтоб ты познал%s то, о чём не знаю я. ", $end);[/PHP] А вот код для чайников: [PHP] if($x == 1){ $text = "Пока жду я ответа, хочу чтоб ты познал то, о чём не знаю я. "; }else{ $text = "Пока жду я ответа, хочу чтоб ты познала то, о чём не знаю я. "; } [/PHP] |
|
|
Witu |
16.11.2010, 12:04;
Ответить: Witu
Сообщение
#3
|
|
есть маленький вопросик
разница может быть только в окончании? |
|
|
Witu |
16.11.2010, 14:45;
Ответить: Witu
Сообщение
#4
|
|
ладно понятно автор потерялся :)
выложил то что делал недавно для себя ZhukV, вот что требовалось [php] <?php error_reporting(E_ALL); $text = "1. Пока жду я ответа, хочу чтоб ты \$xпознал:познала; то, о чём не знаю я. \nИ как \$xуслышал:услышала; их же ты."; function printText($inputText, $x) { $regular = '|\$x(.*)\;|U'; // не трогать $match = array(); if(preg_match_all($regular, $inputText, $match)) { for($i = 0; $i < count($match[0]); $i++) { $hex = explode(":", $match[1][$i]); $replace = $x == 1 ? $hex[0] : $hex[1]; $inputText = str_replace($match[0][$i], $replace, $inputText); } } return $inputText; } echo printText($text, 2); ?> [/php] отлично работает хоть с 1000 строк PS заменяет вообще все конструкции вида $x_текст_:_текст_; |
|
|
ZhukV |
16.11.2010, 16:30;
Ответить: ZhukV
Сообщение
#5
|
|
PS заменяет вообще все конструкции вида $x_текст_:_текст_; А вот так$x:Это:супер:Это:очень плохо!
|
|
|
Witu |
16.11.2010, 18:38;
Ответить: Witu
Сообщение
#6
|
|
ZhukV, внимательно читаем $x _текст_: _текст_;
для модернизации на N символов : нужно дописать всего 4 строчки |
|
|
unnormal |
16.11.2010, 18:55;
Ответить: unnormal
Сообщение
#7
|
|
[php]funcrion myfunc($x, $str)
{ if ($x == 1) $replace = "$1"; elseif ($x == 2) $relplace = "$2"; preg_replace('#\$(.+):(.+);#iu', $replace, $str); }[/php] |
|
|
Witu |
16.11.2010, 19:36;
Ответить: Witu
Сообщение
#8
|
|
|
|
|
ZhukV |
16.11.2010, 21:10;
Ответить: ZhukV
Сообщение
#9
|
|
HTMLandPHP, а что только твой рабочий и все? Ведь ты же у нас всегда самый....
Не критикуй других, не будут тогда критиковать и тебя. |
|
|
Free_hb
|
Сообщение
#10
|
|
Благодарю всех за ответы.
Но то, что я искал, в полной мере предоставил HTMLandPHP, отдельное спасибо. В таблице присутствуют достаточно много полней, в которых одна ячейка этих полей всегда содержит текст, но порой текст этот имеет некое обращение, к лицу, которое может быть как женским так и мужским полом. По этому в содержании таких текстов, имеется синонимы, как для мужского так и для женского лица, как я и показывал в примере. По этому, нельзя предугадать эти синонимы, они могут быть разными (он:она),(взял:взяла;),(пнул:пнула;),(читал:читала;), известно лишь только то, что все они имеют одну и ту же связку
и выбор одного из синонима зависит от значения переменной $x ($x = 1 - вывод первого, $x = 2 - вывод второго) Функция, предоставленная HTMLandPHP именно это и реализует. Большое спасибо всем. |
|
|
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
SEO-текст на главной странице сайта и в категориях | 5 | boltuk | 1351 | 26.3.2024, 21:43 автор: c4p1t4l15t |
|
Можно ли в старый SEO текст вместо старого домена поставить новый? | 3 | Tutich | 1146 | 22.3.2024, 14:47 автор: Tutich |
|
pocket-exchange.com - обмен электронных валют. Низкие курсы! Быстрая обработка заявок! | 8 | pocket_exchange | 9300 | 12.8.2022, 15:30 автор: pocket_exchange |
|
Текст для сайта на английском языке | 33 | D007user | 17902 | 26.1.2022, 17:16 автор: D007 |
|
Копирайтинг и рерайт: качественный сео-текст по доступной цене! | 374 | Sostavitel | 196485 | 18.1.2022, 23:46 автор: Sostavitel |
Текстовая версия | Сейчас: 28.3.2024, 14:56 |