regex syntax

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

P Widdershoven

P Widdershoven

02/11/2011 16:02:40
Quote Anchor link
Heb op dit moment deze regex om URL's automatisch klikbaar te maken: (((f|ht){1}tp://)[-a-zA-Z0-9@:%_\+.~#?&//=]+)
Goed, dat werkt, maar gezien er ook links in een object staan (youtube bijvoorbeeld) worden deze ook omgevormd.

Iemand een idee hoe ik voorkom dat deze ook omgevormd worden?

Hieronder het stukje code wat ik nu gebruik.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
$text = eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_\+.~#?&//=]+)',
    '<a href="\\1" target="_blank">\\1</a>', $text);


Object van youtube

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<object width="420" height="260"><param name="movie" value="http://www.youtube.com/v/$1&hl=en&fs=1&"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/$1&hl=en&fs=1&" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="420" height="260"></embed></object>


Alvast bedankt!
 
PHP hulp

PHP hulp

16/03/2025 00:16:00
 
- SanThe -

- SanThe -

02/11/2011 16:07:27
Quote Anchor link
Ik ben hier niet echt goed in, maar even melden dat je deze function niet meer moet gebruiken.
Quote:
Warning

This function has been DEPRECATED as of PHP 5.3.0. Relying on this feature is highly discouraged.

Gebruik preg_replace()
 
Bas Wagenmaker

Bas Wagenmaker

02/11/2011 19:29:39
Quote Anchor link
Ik zou er een function van maken die alleen geld bij een bepaalde variabele.
Bijvoorbeeld:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php

function link();
if ($global == 1) {
$text = eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_\+.~#?&//=]+)',
    '<a href="\\1" target="_blank">\\1</a>', $text);
}

?>


En dan door je file heen de global veranderen waar nodig.

$global = 1;
content content content
$global = 0;
youtube embed
$global = 1;

Denk dat het met wat aanpassingen wel moet werken!
 
P Widdershoven

P Widdershoven

02/11/2011 20:50:29
Quote Anchor link
Sorry maar dat is geen oplossing natuurlijk ;)
Ik ben het hele reactiesysteem overhoop aan het gooien om BBcodes te integreren. Zal een stuk beter werken ;)
 



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.