2013-11-09 2 views
2

처음 세 항목을 문자열에서 제거하고 싶지만 문제는 각 단어의 문자 수를 모르기 때문에 substr()을 사용할 수 없다는 것입니다. 데이터가 UI에서 오기 때문에 포함합니다.문자열 시작 부분에서 단어를 제거하는 방법 explode()

즉;

$str = A big brown fox jumped over the log; 
    $str = A slow red fox jumped over the log; 
    $str = An enthusiastic brown fox jumped over the log; 
I가 공백을 포함하므로 새로운 문자열 "여우"로 시작하는 처음 세 단어를 삭제하려는

다음 I 새로운 변수에이 데이터를 저장 계획 .

나는 이것을 익숙치 않게 배열에서 0,1,2를 제거하는 것보다 쉬운 방법이 있기를 바라고있다. 만약 내가 익숙하지 않은 한 줄을 어떻게 알 수 있다면, 나 몫을.

답변

2

배열 역 참조를 지원하지 않는 PHP :

$str = 'A big brown fox jumped over the log'; 
$split = preg_split('/ /',$str, 4); 
$rest = $split[3]; 
+0

Wh 이 간단한 작업을 위해'preg_split'을 사용 하시겠습니까? –

+0

Regexp : OP가 "Without explode()"에 대한 이유 –

+0

@ MarkBaker : 좋습니다. 이 코드는 배열 역 참조를 지원하는 PHP 버전에서만 작동한다고 언급하고 싶을 수도 있습니다. –

1
echo implode(' ', array_slice(explode(' ', $str), 3)); 

출력은 세 문자열 모두에 대해 fox jumped over the log입니다. 당신의 버전뿐만 아니라

당신이 경우 문장 부호를 조정하려는 경우 정규 표현식을 수정 단어를

$str = 'A big brown fox jumped over the log'; 
$rest = preg_split('/ /',$str, 4)[3]; 

을 차별화하는 공간에 간단한 분할을 가정

Demo!

관련 문제