| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Perl: Общие вопросы > Помогите перевести код Perl в код PHP |
| Автор: muratbek 15.8.2006, 00:05 |
| Всем привет! Я работаю в основном в РНР. с Перлом совсем не знаком. Не поможите перевести этот код в код РНР. Очень прошу. $text_tmp = $text; #замена по шаблону $text_tmp=~s/[.\D]{1,3}\.? ?\d\d-?\d\d-?\d\d/ ggggg /g; $text_tmp=~s/[ \.\,\?\!\:\;]\d\-[.\D]{1,5}\. ?[.\D]{1,5}\.?[ \.\,\?\!\:\;]|[ \.\,\?\!\:\;][\d]{1,4} ?.\..?\.?|[.\D]{1,2}\. ?[.\D]{3,5}[ \.\,\?\!\:\;]\./ ggggg /g; $text_tmp=~s/[ \.\,\?\!\:\;].\-..?[ \.\,\?\!\:\;]|[ \.\,\?\!\:\;].{1}\/.{1}[ \.\,\?\!\:\;]/ ggggg /g; $text_tmp=~s/.{3,4}\-?[\d]{3,6}/ ggggg ggggg /g; $text_tmp=~s/[ \.\,\?\!\:\;]..?[ \.\,\?\!\:\;]/&/g; $text_tmp=~s/[ \.\,\!\?\-]/&/g; $text_tmp=~s/&.{1,2}&/&/g; $text_tmp=~s/&{1,}/&/g; #$text_tmp=~s/&..?&?/&/g; #print $text_tmp; @sd = split(/&/, $text_tmp); $sch = 0; #подсчет кол-ва слов foreach(@sd) { $sch++; } |
| Автор: chaos 15.8.2006, 07:49 |
| muratbek, так работаешь значит, что не можешь перевести. s/// - аналог на ПХП вроде ereg_replace() split он и в африке сплит конструкция foreach(@sd) означает перебор всех элементов массива вот и все! |
| Автор: Mal Hack 15.8.2006, 11:59 |
"Вроде" это совсем другие паттерны. preg_replace ему нужен. |