Помогите пожалуйста разобраться со строкой :)

cjremix

Новичок
Помогите пожалуйста разобраться со строкой :)

Привет всем!
У меня в скрипте есть строка типа "blablabla\n atata\n blablabla". Из неё нужно получить строку такого типа:
"($id,blablabla),($id,atata),($id,blablabla)", где $id - какая-то переменная.
Я сделал по-тупому:

PHP:
$newstring = explode("\n",$string);
foreach($newstring as $k=>$v) $mystring.="(".$id.",".$v."),";
Однако, чувствую, что можно это сделать быстрее, может через регулярные выражения? Подскажите, пожалуйста, можно ли и как?
Спасибо :)
 

zerkms

TDD infected
Команда форума
PHP:
$str = '(' . $id . ',' . str_replace("\n", '),(' . $id . ',', $string) . '),';
 

cjremix

Новичок
Блин)))
Всё гениальное просто, спасибище огромное! :)
Постраюсь больше таких тупых вопросов не задавать =\

P.s. а если вместо $id нужен счётчик в зависимости от количества "\n"?
 

phprus

Moderator
Команда форума
cjremix
P.s. а если вместо $id нужен счётчик в зависимости от количества "\n"?
В таком случае ИМХО наиболее простым и удачным будет решение с циклом.
 

ведьма

Новичок
привет. если вам не сложно помогите пожалуйста. Код состоит из символов, которые не пропустит регулярное выражение.
Символы:
a b c d e f g h i j k l m n o p q r s t u v w x y z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
0 1 2 3 4 5 6 7 8 9 - . , ? ! % * _ # : ; ~ \ & $ @ / = +
Регулярное выражение:
[abcdf-stv-zABCE-IKZ1-9\-\.,\?!%\*_\#:;~\&$@\/=]+
какой код?
 

ведьма

Новичок
Код состоит из 7 символов, которые не пропустит регулярное выражение.
 

Ravanger

Новичок
Даже паттерн неправильно написан :)

Отправьте смс на номер бла бла бла и получите код :))))

---- upd ---

По скольку я сегодня добрый, держите подсказку ))
PHP:
<? $str = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-.,?!%*_#:;~\&$@/=+";
$pattern = "/[^abcdf-stv-zABCE-IK-Z1-9\-\.,\?!%\*_\#:;~\&$@\/=]+/";
preg_match_all($pattern, $str, $matches);
var_dump($matches);
 

ведьма

Новичок
я плохо понимаю регулярные выражения, а задание надо выполнить срочняк...

-~{}~ 10.11.08 15:56:

мне нужно последовательность из 7 символов, которые не пропустит донное регулярное выражение. На Вас вся надежда...
 

Ravanger

Новичок
ведьма
1. вы блондинка?
2. вы НЕ туда пошли учиться
3. даже если вы закончите свое уч. заведение, никогда не идите работать
4. ответ написан выше, надо просто пошевелить извилиной которая держит уши
 

zerkms

TDD infected
Команда форума
ведьма
ятупаяп

эта последовательность из 7 символов не будет пропущена этой регуляркой
 

ведьма

Новичок
но всё равно спасибо

-~{}~ 10.11.08 16:09:

мне надо из тех символов, что перечислены
 
Сверху