parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

match не выводит значения

Mizter Egoist 11.08.2013 22:16

Я больше чем догадываюсь, что для решения этой проблемы у меня недостаточно мозгов, а точнее знаний и понимания сути, но все же решил взяться за дело. Может эту штуку и нет смысла развивать, но Я решил попробовать.
Моя цель проверить $env:HTTP_USER_AGENT на значения и сверить с данными, например у меня при выполнении такой результат:
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.95 Safari/537.36
Как известно Windows NT 6.1 это Windows 7 или Server.
Так вот, Я проверяю полученную строку $env:HTTP_USER_AGENT на все значения таким образом:
$dataOS[$env:HTTP_USER_AGENT]
^if(^dataOS.match[Windows NT ([0-9].[0-9]{1,2})][i]){$match.1}
Проблема в том, что Я перечитал и перепробовал множество вариантов, но так и ничего не достиг. Я хочу получить при поиске эти самые цифры 6.1 и сверить их с данными версий и отобразить какая ОперСис стоит у посетителя.
Я выполняю поиск по следующей конструкции:
^if(^dataOS.match[mac][i]){
Macintosh
}(^dataOS.match[Windows NT ([0-9].[0-9]{1,2})][i]){
^if(def $match.1 eq 6.1){Windows 7}(def $match.1 eq 6.0){Windows Vista}
}(^dataOS.match[linux][i]){
Linux
}
Знаю что неправильно, но Я не нашел нужной конструкции даже ознакомившись с уже готовыми примерами, которые опубликованы на сайте парсера.
И у меня в голове есть идея, что можно версии и значения, например 6.1 = Windows 7, как-то записать в хеш и сверять таким способом.
И какая проверка должна выполняться на версии Mozilla/ Chrome/ Safari/ и не только на версии, и еще на название, есть ведь и другие названия...

  • match не выводит значения, Mizter Egoist 11.08.2013 22:16
    • Ответ, G_Z [M] 11.08.2013 22:32 / 11.08.2013 22:38