Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: преобразование номера
 
 автор: slim   (07.07.2010 в 15:22)   письмо автору
 
 

нужно преобразовать регуляркой (substr не предлагать) вот что :123456789 -> 1-234-56-789

  Ответить  
 
 автор: cheops   (07.07.2010 в 15:33)   письмо автору
 
   для: slim   (07.07.2010 в 15:22)
 

Можно отталкиваться от следующего скрипта
<?php 
  $number 
"123456789";
  
$pattern "|^([\d])([\d]{3})([\d]{2})([\d]{3})$|";
  if(
preg_match($pattern$number$out))
  {
    echo 
"$out[1]-$out[2]-$out[3]-$out[4]";
  }
?>

  Ответить  
 
 автор: sim5   (07.07.2010 в 15:37)   письмо автору
 
   для: slim   (07.07.2010 в 15:22)
 

Ну так прям сразу и рег. выражение? А так что нельзя?
<?
$n 
123456789;
$n str_split($n,1);  
echo 
$n[0] .'-'implode('',array_slice($n,1,3))  .'-'
          
implode('',array_slice($n,4,2)) .'-'
          
implode('',array_slice($n,6,3));

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования