За последние 24 часа нас посетили 18158 программистов и 1591 робот. Сейчас ищет 1061 программист ...

Регулярка и цикл

Тема в разделе "Регулярные выражения", создана пользователем viphost, 9 дек 2012.

  1. viphost

    viphost Активный пользователь

    С нами с:
    23 мар 2009
    Сообщения:
    307
    Симпатии:
    0
    Прошу помощи, что то у меня не получается сделать следующее
    Нужно перебрать порядка 5тыр записей вида
    Код (Text):
    1. ('mail1', 'pass1', 'Nikname', 1, 250, 50, 1, '1355017502', '1277481949', '', 1, '', '', 'foto_1.gif', '', '', '', '', 19, 1, '', '', '', '', '', 0, 0, ''),
    2. ('mail2', 'pass2', 'Nikname2', 2, 0, 0, 4, '1312366635', '1277597617', '', 1, '', '', '', '', 'Kiev', '590057779', '', 6, 6, '', '', '', '', '', 0, 0, ''),
    3. ('mail3', 'pass2', 'Nikname3', 3, 0, 0, 4, '1282775088', '1277679135', '', 1, '', '', '', '', ', ', '450141994', '', 6, 6, '', '', '', '', '', 0, 0, ''),
    и на выходе получить
    Код (Text):
    1.  
    2. mail1 pass1 Nikname
    3. mail2 pass2 Nikname2
    4. mail3 pass3 Nikname3
    5. ........
    Код (Text):
    1. foreach($var as $val => $key) {
    2.    $user .= "{$val[0]} {$val[1]} {$val[2]}" ;
    3. //Где $val[0] - емаил   $val[1] - пасс  $val[2] - логин
    4. }
     
  2. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    тут цикл не нужен
    Код (PHP):
    1. $str = "('mail1', 'pass1', 'Nikname', 1, 250, 50, 1, '1355017502', '1277481949', '', 1, '', '', 'foto_1.gif', '', '', '', '', 19, 1, '', '', '', '', '', 0, 0, ''),
    2. ('mail2', 'pass2', 'Nikname2', 2, 0, 0, 4, '1312366635', '1277597617', '', 1, '', '', '', '', 'Kiev', '590057779', '', 6, 6, '', '', '', '', '', 0, 0, ''),
    3. ('mail3', 'pass3', 'Nikname3', 3, 0, 0, 4, '1282775088', '1277679135', '', 1, '', '', '', '', ', ', '450141994', '', 6, 6, '', '', '', '', '', 0, 0, ''),";
    4. preg_match_all("#\(('(.+?)',\s'(.+?)',\s'(.+?)')#", $str, $m);
    5. print_r(str_replace(array("'", ","), '', $m[1]));