Официальный сайт студ.городка НГТУ
Программирование и БД » [php]реглярки.помогите составить патерн 

#1  05.02.07 10:23

[php]реглярки.помогите составить патерн

дано:строки вида
name="input1" type="hidden" value="1"
атрибуты могу стоять в разно порядке,и могут быть пробелы вида type = "hidden".
нужно выдернуть все все атрибуты в массив.
зы: то есть нада убрать возможные пробелы около знаков = : " например у атрибута style = "width: 300px".

Исправлено iDrum (05.02.07 11:36)

Offline

#2  05.02.07 12:01

Re: [php]реглярки.помогите составить патерн

А если вот так поизвращаться? :)

Код: php:

// input: string $string
 
$str = explode ( '=', $string );
 
foreach ( $str as $peace )
   $peace = trim ( $peace );
 
$string = implode ( '=', $str );
 
$attrs = explode ( ' ', $string );
 
$attributes = array ();
 
foreach ( $attrs as $attr ) {
   list ( $attr_name, $attr_value ) = explode ( '=', $attr );
  $attributes [ $attr_name ] = substr ( $attr_value, 1, strlen ( $attr_value ) - 2 );
}
 
// output: array $attributes

Offline

#3  05.02.07 12:32

Re: [php]реглярки.помогите составить патерн

Karminsky, оригинально каэш )))
но есть одно но..допустим есть строка:
style="width: 320px;" name= "ttitle" value="" type="text"
так вот не работает эксплод если делить по '=',а вот если по '= ',то пашет....чё за нафиг?

Offline

#4  05.02.07 14:30

Re: [php]реглярки.помогите составить патерн

Если $peace = trim ( $peace ); заменить на $peace = str_replace ( ' ', '', $peace );, то должно работать :))

Offline

#5  05.02.07 15:20

Re: [php]реглярки.помогите составить патерн

:),ну трим то должен работать )

Offline

#6  05.02.07 18:10

Re: [php]реглярки.помогите составить патерн

Укроп написал(а):

iDrum, слушай бездарь что тебе великий сева говорит

Это не я бляяя...

Offline

#7  05.02.07 18:13

Re: [php]реглярки.помогите составить патерн

Укроп, лизнул

Offline

#8  05.02.07 18:15

Re: [php]реглярки.помогите составить патерн

iDrum написал(а):

:),ну трим то должен работать )

Трим работает, но он вырезает пробелы в конце и начале строки, не вырезая при этом пробелы в середине :P

Offline

Программирование и БД » [php]реглярки.помогите составить патерн 

ФутЕр:)

© Hostel Web Group, 2002-2025.   Сообщить об ошибке

Сгенерировано за 0.078 сек.
Выполнено 14 запросов.