숫자와 문자가 포함 된 문자열에서 숫자를 추출하고 싶습니다.
"In My Cart : 11 items"
나는 숫자 11
나 다른 숫자 를 얻기를 원합니다 .
답변
$str = 'In My Cart : 11 12 items';
preg_match_all('!\d+!', $str, $matches);
print_r($matches);
답변
숫자 이외의 모든 것을 필터링하려면 filter_var 을 사용하는 것이 가장 쉽습니다 .
$str = 'In My Cart : 11 items';
$int = (int) filter_var($str, FILTER_SANITIZE_NUMBER_INT);
답변
preg_replace('/[^0-9]/', '', $string);
이것은 더 나은 일을해야합니다! …
답변
사용 preg_replace
:
$str = '(111) 111-1111';
$str = preg_replace('/\D/', '', $str);
echo $str;
출력 : 1111111111
답변
부동 숫자의 경우
preg_match_all('!\d+\.?\d+!', $string ,$match);
실수를 지적 해 주셔서 감사합니다. mick
답변
나는 이것에 대한 크레딧을 소유하지 않지만 단지 공유해야합니다. 이 정규식은 소수점 / 자리와 쉼표를 포함하여 문자열에서 숫자를 가져옵니다.
/((?:[0-9]+,)*[0-9]+(?:\.[0-9]+)?)/
여기에서 인용 :
php-regex-문자열에서 소수 (점과 쉼표)로 숫자를 추출하는 방법 (예 : 1,120.01)?