chrisran Posted July 30, 2009 Share Posted July 30, 2009 $string="««« </form> </td> <td>IWantThisString<BR>"; I've tried with: $exp="/««« </form> </td> <td>(.*?)<BR>/"; But got no luck, the array is empty. Do I have to skip the spaces in some way ? Thanks Chris Link to comment https://forums.phpfreaks.com/topic/168186-solved-regexp-not-matching/ Share on other sites More sharing options...
nrg_alpha Posted July 30, 2009 Share Posted July 30, 2009 The issue is that you are using / as your delimiters, but you are not escaping all / instances inside the pattern (example, </form> becomes <\/form>). For this reason alone, I avoid using / as delimiters.. you could rewrite the pattern as such: $exp='#(?:«){3}\s+</form>\s+</td>\s+<td>(.*?)<BR>#'; Instead of matching literal space for space, I made use of \s+ (which is a shorthand for any whitespace character, one or more times), just in case you run into instances where there is two conscutive spaces as opposed to a single one. Link to comment https://forums.phpfreaks.com/topic/168186-solved-regexp-not-matching/#findComment-887043 Share on other sites More sharing options...
chrisran Posted July 30, 2009 Author Share Posted July 30, 2009 Thanks, that was is, it works now ! Link to comment https://forums.phpfreaks.com/topic/168186-solved-regexp-not-matching/#findComment-887085 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.