Petsmacker Posted February 24, 2007 Share Posted February 24, 2007 I'm trying to get a piece of code to remove any parts of it that are not contained with brackets like these [ ] I'm terrible at REGEX and have put this together from random other bits of REGEX around my site. $tbhgcode1=preg_replace("/\[(.*?)\]/is" ,"" ,$tbhgcode1); Basically what I need it to do is the opposite of what it does now, it needs to remove the bits that AREN'T in the brackets. Can you help? Quote Link to comment Share on other sites More sharing options...
effigy Posted February 24, 2007 Share Posted February 24, 2007 You can use the methods described here. The only difference is that it's using "<content>" instead of "[content]." Quote Link to comment Share on other sites More sharing options...
Petsmacker Posted February 24, 2007 Author Share Posted February 24, 2007 I'm sorry, I did say I was terrible with Regex, I tried to implement some of the techniques on the thread and change the tags but kept going wrong. As a general update my script so far has got to this: $tbhgcode1 = preg_replace("[\](.*?)]", "]", $tbhgcode1); Quote Link to comment Share on other sites More sharing options...
c4onastick Posted February 24, 2007 Share Posted February 24, 2007 Might be easier just to match it. If you want to keep the brackets then: preg_match('/\[[^]]+\]/i', $tbhgcode1, $match); echo $match[0]."\n"; Otherwise this: preg_match('/(?<=\[)[^]]+(?=\])/i', $tbhgcode1, $match); echo $match[0]."\n"; which will discard the brackets. Quote Link to comment Share on other sites More sharing options...
Petsmacker Posted February 24, 2007 Author Share Posted February 24, 2007 Thank you very much Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.