View Single Post
Old 09-14-2013, 04:49 PM  
PSD
PornSiteDomains.com
 
PSD's Avatar
 
Industry Role:
Join Date: Oct 2002
Location: US
Posts: 1,265
Regular expression question

Using php I would like to detect something in a string depending on whether the part immediately after the matched part does not contain certain characters. I think I may need to use a lookahead negative assertion as explained here but it is not working as I would expect so not sure. So for example:

Code:
$string = 'test aadfadf random text kalkdfjakdf>apple peach orange';
I want an expression that will detect everything up to the > so long as apple does not immediately follow the >

I tried

Code:
if(preg_match("/test(.*)>(?!apple))/i",$string)){
echo 'true since apple does not follow > in string';
}else{
echo 'false since apple follows > in string';
}
When the string contains apple after the > it returns false as I expect and need but when I change the string to have peach after the > instead of apple it still returns false and I need it to return true. Any ideas?
PSD is offline   Share thread on Digg Share thread on Twitter Share thread on Reddit Share thread on Facebook Reply With Quote