PHP에서 문자열에서 숫자를 추출하는 방법
-
preg_match_all()
함수를 사용하여 PHP의 문자열에서 숫자 추출 -
filter_var()
함수를 사용하여 PHP의 문자열에서 숫자 추출 -
preg_replace()
함수를 사용하여 PHP의 문자열에서 숫자 추출
이 기사에서는 PHP의 문자열에서 숫자를 추출하는 방법을 소개합니다.
preg_match_all()
함수 사용filter_variable()
함수 사용preg_replace()
함수 사용
preg_match_all()
함수를 사용하여 PHP의 문자열에서 숫자 추출
내장 함수 preg_match_all()
를 사용하여문자열
에서 숫자를 추출 할 수 있습니다. 이 함수는 ‘문자열’에서 지정된 패턴을 전역 적으로 검색합니다. 이 함수를 사용하는 올바른 구문은 다음과 같습니다.
preg_match_all($pattern, $inputString, $matches, $flag, $offset);
내장 함수preg_match_all()
에는 5 개의 매개 변수가 있습니다. 매개 변수의 세부 사항은 다음과 같습니다
매개 변수 | 기술 | |
---|---|---|
$pattern |
필수 | 주어진string 에서 확인하려는 패턴입니다. |
$inputString |
필수 | 주어진 패턴을 검색하려는 ‘문자열’입니다. |
$matches |
선택 과목 | 이 매개 변수가 제공되면 함수는 일치 프로세스의 결과를 여기에 저장합니다. |
$flags |
선택 과목 | 이 매개 변수에는 PREG_OFFSET_CAPTURE 및 PREG_UNMATCHED_AS_NULL 의 두 가지 옵션이 있습니다. 여기에서 설명을 읽을 수 있습니다. |
$offset |
선택 과목 | 매칭 프로세스를 시작할 위치의 기능을 알려줍니다. 일반적으로 검색은 처음부터 시작됩니다. |
이 함수는Boolean
변수를 반환합니다. 주어진 패턴이 존재하면 참을 반환합니다.
아래 프로그램은 주어진string
에서 숫자를 추출하기 위해preg_match_all()
함수를 사용하는 방법을 보여줍니다.
<?php
$string = 'Sarah has 4 dolls and 6 bunnies.';
preg_match_all('!\d+!', $string, $matches);
print_r($matches);
?>
'!\d+!'
패턴을 사용하여string
에서 숫자를 추출했습니다.
출력:
Array
(
[0] => Array
(
[0] => 4
[1] => 6
)
)
filter_var()
함수를 사용하여 PHP의 문자열에서 숫자 추출
filter_var()
함수를 사용하여문자열
에서 숫자를 추출 할 수도 있습니다. 이 함수를 사용하는 올바른 구문은 다음과 같습니다.
filter_var($variableName, $filterName, $options)
filter_var()
함수는 3 개의 매개 변수를받습니다. 매개 변수의 세부 사항은 다음과 같습니다
매개 변수 | 기술 | |
---|---|---|
$variableName |
필수 | 필터링 할 변수입니다. |
$filterName |
필수 | 변수에 적용될 필터의 이름입니다. 기본적으로 FILTER_DEFAULT 입니다. |
$options |
필수 | 이 매개 변수는 사용할 옵션에 대해 알려줍니다. |
FILTER_SANITIZE_NUMBER_INT
필터를 사용했습니다. ‘문자열’에서 숫자를 추출하는 프로그램은 다음과 같습니다.
<?php
$string = 'Sarah has 4 dolls and 6 bunnies.';
$int = (int) filter_var($string, FILTER_SANITIZE_NUMBER_INT);
echo("The extracted numbers are: $int \n");
?>
출력:
The extracted numbers are: 46
preg_replace()
함수를 사용하여 PHP의 문자열에서 숫자 추출
PHP에서는 preg_replace()
함수를 사용하여문자열
에서 숫자를 추출 할 수도 있습니다. 이 함수를 사용하는 올바른 구문은 다음과 같습니다.
preg_replace($regexPattern, $replacementVar, $original, $limit, $count)
preg_replace()
함수는 5 개의 매개 변수를받습니다. 매개 변수의 세부 사항은 다음과 같습니다
매개 변수 | 기술 | |
---|---|---|
$regexPattern |
필수 | 원래string 또는array 에서 검색 할 패턴입니다. |
$replacementVar |
필수 | 검색된 값의 대체물로 사용하는 ‘문자열’또는 ‘배열’입니다. |
$original |
필수 | 그것은 우리가 값을 찾고 그것을 대체하고자하는string 또는array 입니다. |
$limit |
선택 과목 | 이 매개 변수는 교체 횟수를 제한합니다. |
$count |
선택 과목 | 이 매개 변수는 원래 ‘문자열’또는 ‘배열’에서 이루어진 총 대체 횟수를 알려줍니다. |
/[^0-9]/
패턴을 사용하여문자열
에서 숫자를 찾습니다. ‘문자열’에서 숫자를 추출하는 프로그램은 다음과 같습니다.
<?php
$string = 'Sarah has 4 dolls and 6 bunnies.';
$outputString = preg_replace('/[^0-9]/', '', $string);
echo("The extracted numbers are: $outputString \n");
?>
출력:
The extracted numbers are: 46