webForumDet fria alternativet

Sökmönster

5 svar · 504 visningar · startad av Fredde Mannen

Fredde MannenMedlem sedan nov. 20014 054 inlägg
#1

Hur skall jag skriva ett sökmönter för att matcha alla rader i ett dokument som följer den form:

$lang['MENY_HOME'] = "<a href=\"#\">Startsidan</a>";
$lang['MENY_LOGOUT'] = "<a href=\"#\">Logga ut</a>";

Jag vill alltså komma åt all text mellan dubbelfnuttarna på varje rad där jag har $lang['MENY_vadsomhelst'] = "<a href=\"#\">länk</a>";

dvs den feta texten. :)

The_HulkMedlem sedan juni 20031 837 inlägg
#2

vet inte om följande kan lösa det, annars kanske det kan vara en liten bit på väg

preg_match_all("/\$lang\['MENY_[^\]]+']\s*=\s*\"(.+)\";/s", $buf, $match);
Fredde MannenMedlem sedan nov. 20014 054 inlägg
#3

The_Hulk skrev:

vet inte om följande kan lösa det, annars kanske det kan vara en liten bit på väg

preg_match_all("/\$lang\['MENY_[^\]]+']\s*=\s*\"(.+)\";/s", $buf, $match);

Jag får ingen träffa på den, men om jag tarbort \$ och bara /lang...osv..
så får träffar, returnerar

lang['MENY_HOME'] = "Startsidan"; $lang['MENY_LOGOUT'] = "<a href=\"#\">Logga ut</a>";

..
frågan är om jag skall köra då en preg_match_all igen, och plocka ut det som finns mellan dubbelfnuttarna.. eller om det finns någon annat sätt..

MatteMedlem sedan aug. 20002 975 inlägg
#4

Testa med:

"/^\\\$lang\['MENY_[^']+']\s*=\s*\"(.+)\";/m"
Fredde MannenMedlem sedan nov. 20014 054 inlägg
#5

Detta mönster

/\$lang\['MENY_[^\]]+']\s*=\s*\"(.+)\";/s

funkade finfint!
Men nu har jag problemet att jag inte vet hur jag skall få det utskrivet.. får bara array eller inget alls.. :s men enligt en sida på nätet där jag kunde testa mönstret kunde den hitta vad jag sökte efter.. men hur skriver jag ut alla som matchade.. :q

MatteMedlem sedan aug. 20002 975 inlägg
#6

Vad ska du skriva ut?
I arrayen $match[0] har du hela raderna.
I arrayen $match[1] har du länkarna.

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