0
我有一個這樣的字符串:如何使用preg_replace從字符串中提取負數 - 正數?
SELECT NOW(),DATE_ADD(NOW(), INTERVAL -11 day)
,我需要得到它可以是正的或負的數量。
我試着使用:
preg_replace("/^-?[0-9]/", '', $str);
,但它似乎並沒有工作。
我有一個這樣的字符串:如何使用preg_replace從字符串中提取負數 - 正數?
SELECT NOW(),DATE_ADD(NOW(), INTERVAL -11 day)
,我需要得到它可以是正的或負的數量。
我試着使用:
preg_replace("/^-?[0-9]/", '', $str);
,但它似乎並沒有工作。
如果你想從字符串中「提取」數字,而不是操縱它,那麼你應該使用preg_match()
。如果你想從字符串中刪除數字,只需從正則表達式中刪除^
,這會限制你的正則表達式匹配字符串的開始。
正則表達式:
/-?[0-9]+/ -- note that the + matches 1 or more numbers
的preg_match語法:
preg_match('/-?[0-9]+/', $str, $match);
嘗試取出''^從正則表達式的開始;這告訴正則表達式只匹配字符串開頭的數字。 – Bojangles 2012-02-05 15:07:22
通過說提取您是否嘗試刪除負數和正數? – motto 2012-02-05 15:07:33