|
|
|
|
$pattern = "|CHAR.*NAME=([^\s]+)[\s][^S]+ACCOUNT=.*01921\].*TYPE=([\d]+)[^\d]|isU";
|
Помогите немного подправить конец выражения- 01921\].*TYPE=([\d]+)[^\d]
т.е. когда найдено совпадение с 01921, то берется число из TYPE.
[ITEM 01921]
SERIAL=0400032d8
ID=01f4e
TYPE=91,0,0 <-вот тут взялось число 91
ATTR=094
CONT=04829
Только этот TYPE может быть, а может и не быть, по скольку его нету сразу, то он берется ниже не там, где надо.
[ITEM 01921]
SERIAL=0400032d8
ID=01f4e
ATTR=094
CONT=04829
[ITEM 02222]
ID=01f4e
ATTR=094
TYPE=22,1,0 получается что берется этот TYPE, а он не нужен
CONT=04829
|
Надо чтобы если сразу не найден TYPE, то не брать его ниже. | |
|
|
|
|
|
|
|
для: xexe
(09.06.2006 в 21:52)
| | Можно исправить регулярное выражение следующим образом
$pattern = "|CHAR[^\]]+NAME=([^\s]+)[\s][^S]+ACCOUNT=[^\]]+01921\][^\]]+TYPE=([\d]+)[^\d]|isU";
|
| |
|
|
|
|
|
|
|
для: cheops
(10.06.2006 в 10:53)
| | нет теперь вобще ничего не выводит :((
еще вопрос
Например
NAME=Super Player
выводится только первая часть(до пробела), т.е. Super
Как сделать, чтобы выводилось Super Player | |
|
|
|