2012-07-12 5 views
1

숫자 데이터를 포함하는 문자열 변수가 있습니다 (예 : $x = "OP/12/DIR";). 숫자 데이터의 위치는 응용 프로그램 내에서 수정하여 사용자 환경에 따라 바뀔 수 있으며 슬래시 바는 다른 문자로 변경 될 수 있습니다. 숫자 데이터는 필수 항목입니다. 그래서 문자열에서 숫자 데이터를 추출하는 방법은?PHP에서 문자열 내의 숫자를 빼는 방법은 무엇입니까?

+0

는 항상'/'에 문자열로 둘러싸인 수 있습니까? 그렇게하면 (아마도) 불쾌한 먹이가 아닌 쉽게 폭발 할 수 있습니다. 걱정마, 읽을 수 없어. – Fluffeh

+2

@Fluffeh "이고 슬래시 바는 다른 문자로 변경 될 수 있습니다." – PeeHaa

+0

숫자는 항상 /로 둘러싸이지 않습니다! – pheromix

답변

4

숫자가 아닌 모든 문자를 빈 문자열로 바꿉니다.

$numbers = preg_replace('/[^0-9]*/','',$x); 
+0

정보의 나머지 부분을 유지 관리해야한다면 다소 어려워 질 것입니다. – Fluffeh

+0

참이지만 $ x는 그대로 유지 – rsplak

+0

사실입니다. 내가이 질문에 대한 의견과 함께 뒤에있는 동안 나는 그만 둘 필요가 있다고 생각한다. :) – Fluffeh

1

는 숫자가 아닌 그 everithing 교체 :

$numbers = preg_replace('/[^\d\.]/', '', $input); 

또는 소수를해야합니다 경우 :

$numbers = preg_replace ('#\D*?(\d+(\.\d+)?)\D*#', '$1', $input); 
관련 문제