webForumDet fria alternativet

Pattern matching...

2 svar · 376 visningar · startad av Muzzafarath

MuzzafarathMedlem sedan apr. 20002 487 inlägg
#1

Okej, så här är det. I $ENV{'HTTP_USER_AGENT'} ligger ju vilken browser som surfaren använder. Med den följer en massa information som jag inte behöver (versions-nummer, OS, osv). Det jag vill göra det är att göra ett Perl script som känner igen vilken browser som används.

För att göra detta behöver jag något sätt att leta upp t.ex "Mozilla" eller "MSIE" i $ENV{'HTTP_USER_AGENT'}. Problemet är att jag inte vet hur man använder pattern matching i if-satser. Nån som fattar vad jag babblar om ;)?

if($ENV{'HTTP_USER_AGENT'} innehåller "Mozilla")
{
$browser = "Netscape";
}

elsif($ENV{'HTTP_USER_AGENT'} innehåller "MSIE")
{
$browser = "Internet Explorer";
}

elsif($ENV{'HTTP_USER_AGENT'} innehåller "Opera")
{
$browser = "Opera";
}

/. Muzzafarath

[Redigerat av Muzzafarath den 19 jun 2000]

JojoxxMedlem sedan juni 20004 308 inlägg
#2
if($ENV{'HTTP_USER_AGENT'} =~ /mozilla/i)

i för case-Insensitive. Egentligen är det uttrycket m// som används, men eftersom det är så vanligt accepterar perl även //.

------------------

/ J

[Redigerat av Jojoxx den 19 jun 2000]

MuzzafarathMedlem sedan apr. 20002 487 inlägg
#3

Tack så mycket Jojoxx.

/. Muzzafarath

131 ms totalt · 3 externa anrop · v20260731065814-full.beb2e261
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)