
25.05.2010, 00:55
|
|
Познающий
Регистрация: 14.07.2005
Сообщений: 62
С нами:
10960703
Репутация:
6
|
|
Разделитель строк с условием в массиве
Не могу в скрипте организовать сепаратор в виде пунктиров "---" в одну строку, для того что бы после сортировки разделять разные им строки с разными уидами.
Под уидами я подразумеваю содержимое первых квадратных скобок в каждой строке:1234,107,357,1234
В идеале после обработки текста скриптом должно получится так:
PHP код:
13.05.2010 22:20:38 Продал (0.0.0.0) за 49 для ник [107] (0.0.0.0) Зелье [39235296] (50) [7/7]
13.05.2010 22:21:29 Продал (0.0.0.0) за 49 для ник [357] (0.0.0.0) Зелье [39235287] (50) [7/7] -------------------------------------------------------------------------------------------- 13.05.2010 00:13:01 Купил (0.0.0.0) за 132 у ник [1234] (0.0.0.0) Сумка [27180101] (132) [132/132] 13.05.2010 00:13:54 Продал (0.0.0.0) за 132 у ник [1234] (0.0.0.0) Сумка [27180101] (132) [132/132] --------------------------------------------------------------------------------------------
Ниже код скрипта, я не стал его коверкать и выложил не тронутый моей идеей вариант
PHP код:
$str='13.05.2010 00:13:13 Купил (0.0.0.0) за 132 у ник [1234] (0) Сумка [27180101] (132) [132/132]
13.05.2010 22:20:38 Продал (0.0.0.0) за 49 для ник [107] (0.0.0.0) Зелье [39235296] (50) [7/7]
13.05.2010 22:21:29 Продал (0.0.0.0) за 49 для ник [357] (0.0.0.0) Зелье [39235287] (50) [7/7]
13.05.2010 00:13:42 Купил (0.0.0.0) за 132 у ник [1234] (0) Сумка [27180101] (132) [132/132] ';
$strArr=explode("\r\n",$str);
foreach ($strArr as $key => $value) {
$check=preg_match_all('#\((.+?)\)#',$strArr[$key],$m);
if($m[1][0] == $m[1][1]) {
$strArr[$key]="<b><span style=\"background-color: red; color: white\">$strArr[$key]</span></b>"; }
$uid=preg_match('#^.+?\[(\w+\w)\]#',$strArr[$key],$m);
$uid=$m[1];
$ar[$key]=$uid;
echo"<pre>";
}
asort($ar);
foreach ($ar as $key => $value)
{
echo "$strArr[$key]<br>";
}
Последний раз редактировалось Foster; 25.05.2010 в 02:19..
|
|
|