2012-02-05 4 views
0

나는이 같은 문자열이 있습니다preg_replace를 사용하여 문자열에서 음수를 추출하는 방법은 무엇입니까?

SELECT NOW(),DATE_ADD(NOW(), INTERVAL -11 day) 

을 나는 양 또는 음이 될 수있는 수를 얻을 필요가있다.

나는 사용하여 시도 :

preg_replace("/^-?[0-9]/", '', $str); 

을했지만 작동하지 않는 것 같습니다.

+2

제거보십시오'^'당신의 정규식의 시작부터; 이것은 정규식에 문자열의 시작 부분에있는 숫자 만 일치하도록 지시합니다. – Bojangles

+1

추출물을 말하면 음수와 양수를 제거하려고합니까? – motto

답변

3

문자열에서 숫자를 "추출"하고 조작하지 않으려면 preg_match()을 사용해야합니다. 문자열에서 숫자를 제거하려면 문자열의 시작 부분과 일치하도록 정규식을 제한하는 정규식에서 ^을 제거하면됩니다.

정규식 :

/-?[0-9]+/ -- note that the + matches 1 or more numbers 

는 preg_match 구문 :

preg_match('/-?[0-9]+/', $str, $match); 
관련 문제