Try this... it should only print out "Some webpage data"
$text = "
<script something>script data.</script>
Some webpage data
<script something>another script data </script>
";
print preg_replace('/<script (.*?)></script>(.*?)<\/script>/',
'', $text);
Ando Saabas wrote:
> Ok let me explain my problem further some. I need the regular expression to
> purify the html page from script tags:
> I used: $file = eregi_replace("(<script(.*)>.*</script>)", " ", $file);
> Now this works fine, until theres a webpage like:
>
> <script something>script data.</script>
> Some webpage data
> <script something>another script data </script>
>
> so the regexp above replaces everything between first <script > and last
> </script> ie the webpage data also.
> So i thought to change the regexp to something like this: $file =
> eregi_replace("(<script(.*)>NOT(script)</script>)", " ", $file);
> where NOT(script) would match everything that contains word script
>
>
>
>
> Rick Emery wrote:
>
>
>>the best you can do is:
>>
>><?php
>>$a = "this has php in the string";
>>if( ! ereg("php", $a ) )
>>{ print "a: not in string"; }
>>$a = "this has in the string";
>>if( ! ereg("php", $a ) )
>>{ print "b: not in string"; }
>>?>
>>
>>-----Original Message-----
>>From: Ando Saabas [mailto:[EMAIL PROTECTED]]
>>Sent: Thursday, March 14, 2002 9:33 AM
>>To: [EMAIL PROTECTED]
>>Subject: [PHP] regular expression for (NOT 'word')
>>
>>how would i build a regular expression in php that would match
>>everything but the given word. For example, match the string only if
>>there isnt a word 'php' in the string.
>>I understand i can list characters i dont want to see in the string:
>>[^php].
>>but this means there cant be any p or h in the string. And ^(php) checks
>>if the string starts with 'php'.
>>How should i do it?
>>
>>--
>>PHP General Mailing List (http://www.php.net/)
>>To unsubscribe, visit: http://www.php.net/unsub.php
>>
>
>
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php