$str = '"javascript:OpenWindow("order.aspx?order_id=161FA084AEF13FD7")"';
preg_match('/order\.aspx\?order_id=(.*\"\))/', $str, $a);
print_r($a);
輸出期望:
161FA084AEF13FD7
但得到
161FA084AEF13FD7")
請提高這個..
$str = '"javascript:OpenWindow("order.aspx?order_id=161FA084AEF13FD7")"';
preg_match('/order\.aspx\?order_id=(.*\"\))/', $str, $a);
print_r($a);
輸出期望:
161FA084AEF13FD7
但得到
161FA084AEF13FD7")
請提高這個..
作爲另一種解決方案,您只需確實將關閉捕捉括號移過來,以便它不包括引號和右括號字符。
如,使用:
/order\.aspx\?order_id=(.*)\"\)/
^
|
move this over here
'/order\.aspx\?order_id =([[:xdigit:]] +)/ i' – 2015-02-24 16:16:30
在它的最簡單的只是移動至第二個')'四個字符左邊不包括'')''在捕獲組中,但它可以被改進。 – AbraCadaver 2015-02-24 16:17:35