regex <a>...</a>

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Software Developer C++ en Perl

Ben je een slimme en enthousiaste universitair opgeleide bèta die graag bij een relatief klein softwarebedrijf wil werken waar de sfeer goed is en eigen inbreng gewaardeerd wordt? Wij, IntelliMagic in Leiden, ontwikkelen technisch hoogwaardige software op het gebied van IT infrastructuur performance analytics. Het type software zorgt voor intellectueel interessante uitdagingen. We ontwerpen de producten zelf en verkopen deze als off-the-shelf software aan grote bedrijven in Europa en de VS. Wij zoeken een ervaren C++ software engineer met kennis van Perl voor een van onze ontwikkelteams. Werkzaamheden Samen met de andere ontwikkelaars specificeren, ontwerpen en implementeren van nieuwe functionaliteit

Bekijk vacature »

Software Developer C# .NET

Functie omschrijving Software Developer C# .NET gezocht voor een dynamische organisatie! Ben jij net afgestudeerd of toe aan een volgende stap in je maatschappelijke carrière? Lees dan snel verder! Wij zijn op zoek naar een Software Developer die klaar is voor een nieuwe uitdaging en die een organisatie in de regio Houten wil versterken. Je werkt in deze functie aan verschillende projecten en gaat vaak op bezoek bij klanten. In deze functie kun je een grote mate van uitdaging, diversiteit en verantwoordelijkheid verwachten. Bedrijfsprofiel Waar kom je te werken? Je komt te werken bij een organisatie dat gespecialiseerd is in

Bekijk vacature »

Embedded Developer C++

Functie omschrijving Ben jij op zoek naar een leuke uitdaging als Embedded Developer, zoek dan niet verder! Voor een leuke opdrachtgever in omgeving Rotterdam zijn wij op zoek naar een Embedded Developer die graag met Embedded Devices werkt. Je zult verantwoordelijk worden voor het ontwikkelen en onderhouden van diverse producten. Jouw specialisatie ligt op het vlak van software, hardware en back-end. Dit bedrijf is gespecialiseerd in het ontwerpen van software voor een unieke industrie. Wil jij betrokken worden bij een proces dat loopt van ontwikkeling tot installatie? Waarbij je bezig zult zijn met perfecte systemen die geleverd worden aan binnen

Bekijk vacature »

.Net Ontwikkelaar

Dit ga je doen Het ontwerpen en ontwikkelen van software voor klanten; Het bijdragen van kennis en ervaring; Het integreren van van de software en afstemmen met klanten; Het functioneel testen van de ontwikkelde software. Hier ga je werken Voor onze relatie zijn wij momenteel op zoek naar een .Net Developer die wilt werken aan software die draait op machines wereldwijd. De organisatie produceert software voor applicaties die gebruikt worden in verschillende branches. De software wordt geleverd aan fabrikanten van verschillende robotica en machines. Als .Net ontwikkelaar ben je intern onderdeel van het team wat de applicatie omgevingen ontwikkeld en

Bekijk vacature »

Software developer (PHP) - Utrecht centrum

Functie Ieder onderdeel van de software draait op aparte servers en het bestaat dus echt uit verschillende componenten. Het team bestaat uit 4 developers, een klein team dus met korte lijnen. Alles in intern ontwikkeld en je werkt aan alle facetten. Van uitbreiding van de core tot maatwerk voor de klant. Ook liggen er verschillende uitdagingen op servervlak en databases. Je zult de eerste periode veel samenwerken met de lead developer om vervolgens echt je gang te gaan binnen de software. In het team streven ze naast de hoogst haalbare kwaliteit. Hiervoor werken ze nauw met elkaar samen en levert

Bekijk vacature »

Fullstack Software Developer

Bedrijfsomschrijving Functieomschrijving Java ontwerpen, bouwen en testen (T-shaped). Als senior ontwikkelaar ben je bekend in zowel de back-end als de frontend van een applicatie. Angular, Continious Delivery / Integration. Een ervaren iemand die de leiding kan nemen, een weg vindt in nieuwe situaties, en in oude applicaties. Initiatiefrijk, bekend met de (technische) omgevingen die we bij duo gebruiken, niet te beroerd om collega’s te helpen. Als senior programmeur in staat om op te treden als lead programmeur. Ondersteunt de testers bij de testautomatisering en minder ervaren programmeurs bij dagelijks werkzaamheden. Dit laatste met name op het gebied van Angular. Achtergrond

Bekijk vacature »

Full-stack Developer

As a Full-stack developer at KUBUS, you will develop the (web)applications and services of BIMcollab. You will work on both the front- and back-end. As a software company, KUBUS is in a unique position. We build our own products that are used by tens of thousands of users worldwide. Our company is just the right size: big enough to make a real impact in the market, but small enough that as an individual developer you can have an impact and really make a difference. Our development team consists of over 40 developers, testers, scrum masters and product owners, divided over

Bekijk vacature »

Back end developer Digital Agency

Functie Wij zijn van origine een wordpress bureau, maar sinds 2006 zijn wij dit wel redelijk ontgroeid. Naar mate de jaren verstreken zijn we gegroeid in omvang, maar ook in de complexiteit van opdrachten waarin wij onze klanten kunnen bedienen. Momenteel bestaat onze organisatie uit 4 front end developers, 12 back end developer 3 projectmanagers en een 2 koppig management. Wij zijn een hele informele, bijna familiaire organisatie. Geen strak pak of overhemd, nee gewoon dragen waar jij je prettig bij voelt. De gemiddelde leeftijd ligt tussen de 25 en 30 en wij doen er veel aan om onze hechte

Bekijk vacature »

PHP back-end developer gezocht!

Functie Werk je liever zonder druk en keiharde deadlines maar met de focus op kwaliteit? Dan kom je hier op de juiste plek terecht! In Het team bestaat momenteel uit 12 developers, hiernaast werken er collega’s van front-end, UX maar ook marketing/sales en support. In iedere sprint ontwikkel je samen functionaliteiten met als uitdaging om de klanten de beste gebruikerservaring te bieden. Ze bieden een werkplek waar je jezelf kunt blijven ontwikkelen, en mee te werken aan zowel bestaande als nieuwe mogelijkheden. Eisen • HBO werk- en denkniveau (ze kijken niet naar een papiertje) • Je denkt graag mee over

Bekijk vacature »

Senior Developer ERP Dynamics 365

Samengevat: Deze werkgever is een softwarebedrijf. Ben jij een enthousiaste developer? Heb je ervaring met ERP of Dynamic 365 bussines central? Vaste baan: ERP Applicatie Specialist ERP MBO €3.600 - €5.200 Wij houden ons als bedrijf bezig met het leveren en implementeren van het Microsoft Dynamics pakket binnen verschillende industriële sectoren. Deze werkgever is een veelzijdige organisatie. Je werkt voor de eigen IT organisatie. Zij werken met moderne technologie en staan open voor innovatie. Binnen ons open team is er een no-nonsense cultuur. Daarnaast is er veel onderling contact door de korte communicatielijnen. Het team werkt enthousiast samen om een

Bekijk vacature »

Applicatieontwikkelaar Java EE

Bedrijfsomschrijving De IV- organisatie van de Belastingdienst is verantwoordelijk voor en verzorgt de ICT- voorzieningen. Het merendeel van de applicaties wordt op dit moment door de IV- organisatie zelf ontwikkeld, onderhouden en beheerd in het eigen data center. Naast de zorg voor continuïteit op de massale heffing- en inningsprocessen die plaatsvinden binnen een degelijke, stabiele omgeving, wordt er tevens volop gewerkt aan modernisering van het IV- landschap. Dit gebeurt deels intern door gebruik te maken van de expertise die intern aanwezig is, maar ook door het aantrekken van (kant-en-klaar) oplossingen en expertise uit de markt. Functieomschrijving De afdeling IV –

Bekijk vacature »

Lasrobotprogrammeur/operator

Heb je interesse in trekkers en beschik je overvlijmscherpse precisie? Solliciteer dan op deze vacature! Als Lasoperator ben je vooral bezig met het maken van nieuwe lasrobotprogramma’s en het optimaliseren van bestaande programma’s, zowel online als offline (incl. het bedienen van de Lasrobots). Daarnaast draag je bij aan een optimaal rendement van de las robots. Verder heb je de volgende werkzaamheden: Het meewerken als operator c.q. Robotlassen niveau 2 (van complexe samenstellingen/halffabricaten), het om- en instellen van de diverse stations van lasmallen (productdragers), het afwerken van laswerk (verwijderen lasspetters en oxiden), het bewaken van de machineplanning (op bewerkingen) incl. de

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Full stack developer Python, React

Functie Jij als full stack developer komt binnen onze Technology afdeling te werken. Deze bestaat momenteel uit 15 man. De stack waarmee wij werken is voornamelijk Python, Javascript, React en GraphQL. Binnen deze afdeling wordt er met multidisciplinaire teams gewerkt aan verschillende projecten. Projecten duren vaak langer dan 3 maanden en je bent van begin tot eind vaak betrokken. Naast dat je als full stack ontwikkelaar aan de slag gaat ben je ook Consultant. Dit betekent dat je ook klantcontact hebt in je rol en werkshops geeft. De verhouding tussen deze werkzaamheden zijn ongeveer 70% development en 30% consultancy. Een

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »
Peter  paul

peter paul

16/05/2011 14:40:50
Quote Anchor link
Ik probeer een regelar expression te maken maar het wil niet gaan zo als ik het ingedachten had.

Ik probeer het volgende te zoeken in een string.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<a href='...'> <img scr='...'> </a>

De info ophalen die op de plaats van de puntjes staat probeer ik op te halen. En het zou dan moeten werken op alle variante die kunnen. dus als er een class bij staat moet dat niets uit maken (<a class="link" href='...'>).

dit is wat ik heb bedacht:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
$patroon = '/<[ \n\r]*a(?:.*?)href=[\'|\"]?(.*?)[\'|\"]?(?:.*?)>[ \n\r]*<[ \n\r]*img[ \n\r]*(?:.*?)src=[\'|\"]?(.*?)[\'|\"]?(?:.*?)>[ \n\r]*<[ \n\r]*/[ \n\r]*a[ \n\r]*>/i';

$part_one = '/<[ \n\r]*a(?:.*?)href=[\'|\"]?(.*?)[\'|\"]?(?:.*?)>/i'; # <a href='...'>
$part_two = '<[ \n\r]*img[ \n\r]*(?:.*?)src=[\'|\"]?(.*?)[\'|\"]?(?:.*?)>'; # <img scr='...'>
$part_three = '<[ \n\r]*/[ \n\r]*a[ \n\r]*>'; #</a>


Ziet iemand waar ik fout ga?
 
PHP hulp

PHP hulp

24/04/2024 20:20:37
 
Han eev

Han eev

16/05/2011 15:19:35
Quote Anchor link
http://gskinner.com/RegExr/
Succes, en dan net zolang prutsen totdat het lukt.
Anders zou ik 't maar via de DOM doen.
 
Mark L

Mark L

16/05/2011 17:27:01
Quote Anchor link
Punten die mij opvallen in je regex:
- [\'|\"] Dit betekent NIET ' of ", maar ' of | of " ! Maak hier dus gewoon [\'\"] van. Daarbij hoeft de dubbele quote niet gestript te worden, dus gewoon [\'"]

Ook matcht jouw code dit: <a href='url"><img src='url></a>

Dit wil je natuurlijk niet, dus kun je beter kijken naar een manier om te kijken naar het eerste teken en kijken wanneer deze stopt:
href=([\'"])(.*?)\1

Nu werkt enkel de url ZONDER enige quotes niet...
Hier moeten we nog voor compenseren: (href=([\'"])(.*?)\1|href=([^ ]+))

Daarbij vergeet je dat het ook toegestaan is om spaties e.d. tussen de href en het =-teken te zetten, ook kan dit tussen het =-teken en de waarden...

Ik denk dat je hiermee ver zult komen...
 
Peter  paul

peter paul

17/05/2011 16:49:20
Quote Anchor link
Ik ben al een heel stuk verder gekomen bedankt voor je goede uitleg er bij. Maar nou moet ik nog 1 ding (zo als ik het nou zie) proberen op te lossen.

het moet in dit deel gebeuren. href=([\'"])(.*?)\1

Ik wil graag dat er gecontroleerd wordt of de href eindigt op .jpg, .gif, .png of iets dergelijks.

kan ik daar iets maken als \.(jpg|gif|png)+ dus dat zou dan href=([\'"])(.*?\.(jpg|gif|png)+)\1 zijn

Dit heb ik dan ook getest maar loop tegen het volgende probleem aan.

VB:
<a href="1.htm"><img src="1.jpg" width="400" height="300" border="0"></a>

Na href staat geen van 3 mogelijkheden het is namelijk htm. Dus hij zou deze moeten over slaan. Maar hij gaat gewoon opzoek naar een stuk dat wel matched en dus extract hij 03.htm"><img src="tm_03.jpg
Gewijzigd op 17/05/2011 18:05:53 door peter paul
 
Pim -

Pim -

17/05/2011 17:54:36
 
Mark L

Mark L

17/05/2011 20:03:21
Quote Anchor link
Mag ik je regex tot nu toe zien?

Wat je hiertegen kunt doen ik kijken wat er absoluut niet in een url mag voorkomen. Ik denk nu als eerste aan quotes...

Je kunt namelijk vertellen wat er NIET in mag voorkomen: [^"]

Dan zou ik dit ervan maken: href=([\'"])([^\'"]+\.(?:jpg|gif|png))\1
Wat gebeurt hier?
eerst zoeken we op href=

Als we dit gevonden hebben pakken we de quote die erna staat ([\'"]) en slaan deze op als zijnde \1. Dan pakken we de tekst erna en zeggen dat daar geen quote in mag staan. Ik heb geprobeerd om de \1 te gebruiken, maar ik krijg [^\1] niet goed werkend, dus heb ik besloten dat er gewoon GEEN quote in mag... want dat zou je in principe alleen bij Javascript gebruiken, als ik het goed heb.
Daarna zoeken we op de extensie. Deze extensie hoeft niet als aparte variabele opgeslagen te worden: vandaar de ?: aan het begin van de group. En na de inhoud van het href-attribuut volgt de quote.

Als je het helemaal mooi/perfect wilt hebben, moet je denk ik de single en double quote apart matchen en ook nog controleren op eventueel gestripte quotes:

<a href="http://www.quote.nl/quote\".htm"><img src="1.jpg" width="400" height="300" border="0"></a>

Ik heb al gezegd dat er ook spaties/enters tussen de href en het =-teken kan zitten..
Daarbij wil ik ook melden dat een extensie niet alles zegt. Sommige afbeeldingen zijn .php; als ze gerendered worden via GD o.i.d. ... Daarbij kun je natuurlijk ook controleren of de inhoud van het href-attribuut gelijk is aan die van de src.
 
Peter  paul

peter paul

19/05/2011 09:58:23
Quote Anchor link
dit is wat ik tot nu toe heb.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
/<[ \n\r]*a(?:.*?)href[ \n\r]*=[ \n\r]*([\'"])([^\'"]+\.(?:jpg|gif|png|wmv|mpg))\1(?:.*?)>(?:.*?)<[ \n\r]*img[ \n\r]*(?:.*?)src[ \n\r]*=[ \n\r]*([\'"])(.*?)\1(?:.*?)>(?:.*?)<[ \n\r]*\/[ \n\r]*a[ \n\r]*>/is


Maar na veel testen ben ik iets tegen gekomen wat niet gaat zo als ik in gedachten had.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<a href="test.jpg">test</a>
<img src="image.png">
<a href="test2.jpg">test2</a>


Rekent hij ook goed. Dus ik denk dat ik moet proberen er voor te zorgen dat in onderstaande combinatie </a> niet in dat deel mag voor komen

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
>(?:.*?)<


Maar het probleem is </a> kan op meerdere manieren geschreven worden met spaties en dergelijke. Hoe kan ik dit oplossen?
Gewijzigd op 19/05/2011 10:00:07 door peter paul
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.