두 단어가 공간에 의해 강렬 해지고, 앞뒤에 많은 공백이 있습니다. 내가해야 할 일은 한 번에 사이에 공백을 제거하기 전입니다.문자열 앞뒤에 공백을 제거하는 방법은 무엇입니까?
어떻게 공백을 제거 할 수 있습니까?
두 단어가 공간에 의해 강렬 해지고, 앞뒤에 많은 공백이 있습니다. 내가해야 할 일은 한 번에 사이에 공백을 제거하기 전입니다.문자열 앞뒤에 공백을 제거하는 방법은 무엇입니까?
어떻게 공백을 제거 할 수 있습니까?
당신은 trim()을 사용하여, 그것을 위해 정규식을 필요로하지 않습니다
$words = ' my words ';
$words = trim($words);
var_dump($words);
// string(8) "my words"
이 기능은 시작과 STR의 끝에서 공백을 제거한 문자열을 반환합니다. 완성도를 들어
(이 질문에 regex
태그대로는) 여기 정규식에서 trim()
재 구현입니다 : didnt가 위의 두 솔루션은 나를 위해 일한 어떤 이유
function preg_trim($subject) {
$regex = "/\s*(\.*)\s*/s";
if (preg_match ($regex, $subject, $matches)) {
$subject = $matches[1];
}
return $subject;
}
$words = ' my words ';
$words = preg_trim($words);
var_dump($words);
// string(8) "my words"
, 그래서 난이 솔루션을 함께했다.
function cleanSpaces($string) {
while(substr($string, 0,1)==" ")
{
$string = substr($string, 1);
cleanSpaces($string);
}
while(substr($string, -1)==" ")
{
$string = substr($string, 0, -1);
cleanSpaces($string);
}
return $string;
}
이것이 작동하는 동안 재귀에 대한 오버 헤드로 인해 매우 느리고 비효율적입니다. 왜 모든 문자열에 잘 작동해야하므로 트림이 당신을 위해 작동하지 않았는지 모르겠습니다. –
어떻게 이런 방식으로 작동하지 않습니까? 나는 여전히 문자열 뒤에 흰 공백을 참조하십시오. 어떤 힌트? 누구? – ihue
아마도 그들은 정말로 공백이 아닙니다. Office Word에서이 문제가 발생했습니다. –