누구나이 코드를 설명 할 수 있습니까? ("[] +", $ s); 감사PHP 스플릿에 대해서
$s = "Split this sentence by spaces";
$words = split("[ ]+", $s);
print_r($words);
Output:
Array
(
[0] => Split
[1] => this
[2] => sentence
[3] => by
[4] => spaces
)
누구나이 코드를 설명 할 수 있습니까? ("[] +", $ s); 감사PHP 스플릿에 대해서
$s = "Split this sentence by spaces";
$words = split("[ ]+", $s);
print_r($words);
Output:
Array
(
[0] => Split
[1] => this
[2] => sentence
[3] => by
[4] => spaces
)
문자열을 정규 표현식으로 배열로 나눕니다. This function은 PHP 5.3.0부터 사용이 권장되지 않습니다. 이 기능에 의존하는 것은 매우 바람직하지 않습니다.내가 대신 '분할'기능을 '폭발'reccommend
:
$s = "Split this sentence by spaces";
$words = explode(" ", $s);
print_r($words);
출력 :
array(5) {
[0]=>
string(5) "Split"
[1]=>
string(4) "this"
[2]=>
string(8) "sentence"
[3]=>
string(2) "by"
[4]=>
string(6) "spaces"
}
그것은 하나 이상의 공간과 일치하는 정규 표현 "[] +"에 의해 배열에 지정된 스트링을 분할한다. 기술적으로는 단지 "+"될 수 있지만 그 공간 때문에 대괄호로 읽을 수 있습니다.
split 함수는 버전 5.3부터 감가 상각되었으므로 대신 preg_split을 사용해야합니다.
모두가 documentation입니다.
split
첫 번째 인수는 구분 기호가 어떻게 나타나는지를 설명하는 정규식입니다. 귀하의 경우, "[ ]+"
(간단히 " +"
이라고도 쓰여 있음)은 "하나 이상의 공백"을 의미합니다.
"[ ]+"
은 정규 표현식입니다. 공백에 따라 문자열을 분할합니다.
split의 첫 번째 인수는이 예제에서 "가능한 한 여러 번 공백 문자 일치"라고 말하는 정규식 패턴입니다.
N.B .: split은 PHP 5.3부터 사용되지 않으므로 권장하지 않습니다.
$words = explode(" ", $s);
이 더 많은 정보를 위해 explode manual page을 참조하십시오
당신은 정확하게를 통해 동일한 효과를 얻을 수있다.
split
함수도 정규 표현식을 인수로 사용할 수 있습니다. 당신이 할 때,
[ ] // a character class is used with a space
+ // find one or more instances of space
를 따라서 :
$words = split("[ ]+", $s);
을 배열 생성과 공간에 의해 구분 된 모든 문자와 $words
변수에 저장되는 경우에, 당신은 의미 [ ]+
를 지정합니다.
추가 정보 : split
기능이 지원되지 않습니다 것을
참고. 이 같은 explode
과 같은 일을 할 수있다 : 펄 정규 표현식
$s = "Split this sentence by spaces";
$words = explode(' ', $s);
print_r($words);
좋은 자원이 here를 찾을 수 있습니다.
대기입니다 싱글 문자 클래스인가요? WhereTF는 이것들에서 유래합니까? 그들은 조금 이해가되지 않는, 아직 내가 SO 만에 그들에게 두 세 번 본 적이 o.O – delnan
이봐,이 정규식 (preg_split를 사용하거나 폭발, 그 분할이되지 않습니다주의)를 사용하여 문자열을 분할합니다. 분할 함수는 "간단한"정규식을 사용합니다 (그러나 Perl과 호환되는 Regex는 사용하지 않습니다). regex : [] +는 하나 또는 여러 개의 공백과 일치합니다. –
그것은 응답 – Samuel