2017-10-15 1 views
-1

PHP에서는 문자열에 13 번 이상 나타나는 모든 부분 문자열을 반환하기 위해 어떤 함수를 사용할 수 있습니까? 어떻게 사용하는지 예제를 제공해 줄 수 있습니까? 건배.PHP : 문자열에서 특정 횟수만큼 발생하는 모든 부분 문자열을 얻는 방법

예 :"같은 장소에 비가 내리고, 새 장소에 비가 내리고, 이전 장소에 ​​비가 내립니다"와 같은 하위 문자열이 있습니다. 문자열에 3 번 이상 나타나는 하위 문자열을 모두 인쇄하고 싶습니다.

$words = str_word_count($string, 1); 

$frequency = array_count_values($words); 

$result = array_filter($frequency, function ($x) { return $x >= 13; }); 

영어 이외의 언어와 비를 들면 : 대답은 배열의 배열 (비에서의 장소)

+1

무엇을 시도 했습니까? 예심 코드를 추가 할 수 있습니까? 그 곳에서 수령 할 수 있습니다. –

+0

@ Theophilus-Omoregbee 그런 식으로 하나의 시작 예제를 찾을 수 없었습니다. 배열에서는 array_filter를 사용하지만 문자열에서는 아무것도 사용하지 않습니다. 나는 그것이 가능하지 않다고 믿기 시작하지만 전문가들에게 물어보기로했다. – user3152377

+1

그래도 질문에 논할 말을 논리적으로 보여줄 수 있습니까 –

답변

1

당신은 문자열을 요청하지만 예제는이 말을하려는 것을 보여 줄 것이다 스페인어 언어는 원하는 언어의 모든 문자가 포함 된 문자열을 3 번째 매개 변수로 전달해야 str_word_count 메서드에 전달해야합니다.

또한 배열 배열을 요청한 이유를 모르겠습니다.

+0

응답 해 주셔서 감사합니다! 고맙습니다. 내 문자열을 사용하여 코드를 실행하지만 null 배열이 반환되었습니다. Dreamweaver에서 아래 줄에 오류가 있습니다 : $ result = array_filter ($ frequency, function ($ x) {return $ x> = 13;}); 같은 오류 PHP 설명서의 예제를 계속 읽었지만이를 수정하는 방법을 알 수 없습니다. – user3152377

+1

@ user3152377 어떤 PHP 버전을 사용하며 문자열 예제를 공유 할 수 있습니까? 위의 예제는 익명의 함수를 사용합니다. PHP가 낡았지만 지원하지 않는다면''function ($ x) {return $ x> = 13; }'''를 함수'''function example ($ x) {return $ x> = 13; }'''그리고''array_filter ($ frequency, 'example')'''를 사용하여이 함수를 이름으로 만 사용하십시오. – user1597430

+1

@ user3152377 Dreamweaver (PHP 인터프리터가 아닌 편집기)에서만 오류가 표시되면 설정을 찾아서 PHP 버전으로 드롭 다운되어 있는지 확인하십시오. 편집자가 PHP v5.2 또는 그 이상 버전에 대한 코드의 유효성 검사를 시도하는 것처럼 보입니다. – user1597430

관련 문제