ФорумПрограммированиеPHP для идиотов → Замена подстроки с вероятностью

Замена подстроки с вероятностью

  • AlexB

    Сообщения: 4292 Репутация: N Группа: в ухо

    Spritz 28 марта 2011 г. 1:34

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

    Сразу оговорюсь, вопрос НЕ ПРО ТО КАК СОСТАВИТЬ РЕГУЛЯРКУ, предполагаем, что она у нас уже есть, отлаженная и умеет выцеплять нужные фрагменты. Грубо говоря, если бы у функций str_replace или  preg_replace был бы параметр вероятность, это было бы идеальное решение.
  • phpdude

    Сообщения: 26632 Репутация: N Группа: в ухо

    Spritz 28 марта 2011 г. 1:36, спустя 1 минуту 10 секунд

    AlexB, лол. ну если на производительность похуй, то очевидно preg_replace_callback + function if(rand(0,1) ) return else return $m[0]

    ну дальше сам.
    Сапожник без сапог
  • AlexB

    Сообщения: 4292 Репутация: N Группа: в ухо

    Spritz 28 марта 2011 г. 1:38, спустя 2 минуты 16 секунд

    О, ебты точно. Забыл про такую волшебную функцию … Спасибо.
  • phpdude

    Сообщения: 26632 Репутация: N Группа: в ухо

    Spritz 28 марта 2011 г. 1:38, спустя 20 секунд

    не за что)
    Сапожник без сапог
  • AlexB

    Сообщения: 4292 Репутация: N Группа: в ухо

    Spritz 28 марта 2011 г. 1:41, спустя 3 минуты 8 секунд

    Вот бывает, жопой чуешь - что есть элементарное решение, даже поместил сразу в раздел для начинающих …. )))))))))))
  • phpdude

    Сообщения: 26632 Репутация: N Группа: в ухо

    Spritz 28 марта 2011 г. 1:44, спустя 2 минуты 18 секунд

    AlexB, ага, ахуенная функция)) для стр реплейса бы такое еще было))
    Сапожник без сапог

Пожалуйста, авторизуйтесь, чтобы написать комментарий!