ThorB Skrevet 15. januar 2008 Rapporter Del Skrevet 15. januar 2008 (endret) Noen som kan kjapt gi meg en regexp søkestreng for å finne alle plasser med teksten "<?" men der teksten "php" ikke ligger rett etter Endret 15. januar 2008 av ThorB Lenke til kommentar
ThorB Skrevet 15. januar 2008 Forfatter Rapporter Del Skrevet 15. januar 2008 (endret) trur jeg fant den der: <\?[^php] stemmer ikke dette? Her var den jeg hadde problemer med å finne: [^ ] (brackets) negates any character inside the brackets. http://www.linuxforums.org/applications/de...xpressions.html Endret 15. januar 2008 av ThorB Lenke til kommentar
Gjest Slettet+1374861 Skrevet 17. januar 2008 Rapporter Del Skrevet 17. januar 2008 (endret) dette kan umulig stemme.... det du sier her (med mindre jeg er syyykt trøtt og lei akkurat nå) vil matche alle tilfeller der: "<?" ikke er etterfulgt av en enkelt av bokstavene p eller h. på en måte så oppnår du vel målet ditt, men helt korrekt er det vel ikke... hvis det fantes relevante syntakser som var veldig like, men ikke identiske ville du OGSÅ ha luket vekk syntakser som: "<?hp ", "<?ph ", "<?ppp " osv. det du egentlig vil her regner jeg med er å konvertere "<?" til "<?php" ... ? jeg tok meg ikke tid til å sjekke dette, men jeg vil anta at det er obligatorisk med ett space etter "<?" i php4, med mindre bokstavene "php" følger. dermed vil du jo kunne utelukke at php er der ved å bruke regex mønsteret: "<\?\s", evt "<\? ". en alternativ løsning på det du har begynnt med er jo å slå til med: "<\?[^p][^h][^p]". det vil vel også egentlig holde med: "<\?[^p]" siden jeg ikke ser noe annet lovlig lignende tilfelle... det finnes jo en hel haug med løsninger. her må du foreta noen flere vurderinger, men la gå: "<\?(php\s)?" (her må du da sjekke for at gruppe 1 ikke eksisterer) *med forbehold om trøtte feil Endret 17. januar 2008 av Slettet+1374861 Lenke til kommentar
ThorB Skrevet 19. januar 2008 Forfatter Rapporter Del Skrevet 19. januar 2008 tusen takk for at dere tok dere tid til å hjelpe meg det som ser ut til å fungere bra er <\?(?!php) eneste er at short tag har ennå en varianten som kanskje er best å utelate i det første søket <?="test"?> så da blir koden noe sånt som slik: For å finne alle php short tags "<?" : <\?(?!php|\=) Replace tekst: <?php For å finne alle php short tags "<?=" : <\?= Replace tekst: <?php echo Lenke til kommentar
Gjest Slettet+1374861 Skrevet 19. januar 2008 Rapporter Del Skrevet 19. januar 2008 Ser jo solid ut det der. Har ikke testet så mye med den spesielle (nye for meg) bruken av "?" i kombinasjon med likhets-operatorer, men går ut ifra at i "(?!php|\=)" vil "?!" gjelde for alle case inne i gruppen.. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå