| preg replace for a SIP URI What I have isn't quite there.... |
trillianjedi

msg:4338675 | 9:12 pm on Jul 12, 2011 (gmt 0) | Hi all, Can anyone help me with this PREG_REPLACE? I'm trying to detect a SIP URI (kind of link an email address) which can be in what I'm parsing ending either with a ] or a ;. Like so:- sip:me@example.com; or: sip:me@example.com] So I need a reg-ex that will either/or for the square bracket or a semi-colon. This is what I have so far:-
$line = preg_replace('#sip:(.*)\@(.*)\.(.*)[\];]#', "<span class=\"orange\">sip:$1@\\2.\\3</span>]", $line); This doesn't break on the semi-colon as I intend, although it works on the close square bracket. Any ideas? Thanks!
|
g1smd

msg:4338686 | 9:35 pm on Jul 12, 2011 (gmt 0) | The .* pattern means "match everything until the end of the input". Having done that, you then want to match "everything" again a further two times. That is not possible. This will parse a lot faster: '#sip:([^@]+@([^.]+\.)+[^.;\]]+[;\]])#'
|
trillianjedi

msg:4340553 | 6:20 pm on Jul 17, 2011 (gmt 0) | Thank you! Got it working nicely with your steer. Sorry for the delay in replying - went and got sick (probably too much RegEX :) ).
|
|
|