|
|
|
|
abc name1l[2]
name2[8]
xxx name3[5]
abc name4[4]
abc name5[9]
name6[7]
|
скрипту передается вот такой список, это список юзеров чата...
некоторые ники имеют приставку "abc" или "xxx" , как из такого списка получить массив где будут только имена... например
name1
name2
name3
name4
name5
name6 | |
|
|
|
|
|
|
|
для: hanterz
(01.11.2006 в 10:34)
| | >скрипту передается вот такой список, это список юзеров чата...
как именно передается?
[поправлено модератором] | |
|
|
|
|
|
|
|
для: hanterz
(01.11.2006 в 10:34)
| | Попробуй так:
<?php
$a=array("abc name1l[2]", "xxx name3[5]","name2[8]",
"abc name4[4]",
"abc name5[9]",
"name6[7]",
);
foreach($a as $s){
$s=explode("[",$s);
$s=$s[0];
$s=explode(" ",$s);
$s1=$s[1];
if($s1==false){
$s1=$s[0];
}
print $s1."<br>";
}
?>
|
| |
|
|
|
|
|
|
|
для: hanterz
(01.11.2006 в 10:34)
| | так:
<?php
$a=array("abc name1l[2]", "xxx name3[5]",
"abc name4[4]",
"abc name5[9]",
"name6[7]");
foreach($a as $s){
$s = preg_replace('/(abc |xxx )?name(\d+)\[\d+\]/isU', '\2', $s);
print $s."<br>";
}
?>
|
| |
|
|
|
|
|
|
|
для: ЯR
(01.11.2006 в 11:37)
| | у нас же изначально не массив, а там форма и textarea и передаеются в переменной данные | |
|
|
|
|
|
|
|
для: hanterz
(01.11.2006 в 14:39)
| | Имена разделяются переводом строки? Тогда массив $a можно получить следующим образом
<?php
$a = preg_split("|[\r\n]+|",$_POST['textarea']);
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(01.11.2006 в 18:09)
| | dert
спасип, почти работает, проблема только если ник с пробелами (
cheops
пасип | |
|
|
|
|
|
|
|
для: hanterz
(02.11.2006 в 01:58)
| | >спасип, почти работает, проблема только если ник с пробелами (
А мою версию попробуй:
<?php
$a=array("abc name11[2]", "xxx name3[5]",
"abc name4[4]",
"abc name5[9]",
"name6[7]");
foreach($a as $s){
$s = preg_replace('/(abc|xxx)?\s*(name\d+)\[\d+\]/isU', '\2', $s);
print $s."<br>";
}
?>
|
| |
|
|
|
|
|
|
|
для: ЯR
(02.11.2006 в 03:53)
| | не то | |
|
|
|