안녕하세요 세계
안녕하세요 세계
에
누구든지 PHP에서 어떻게 할 생각이 있습니까? regexp와 함께
안녕하세요 세계
안녕하세요 세계
에
누구든지 PHP에서 어떻게 할 생각이 있습니까? regexp와 함께
: 당신은 또한 모든 멀티 흰색 문자를 제거하려면
preg_replace('/()+/', ' ', $string);
, 당신은 \ S를 사용할 수는
preg_replace('/(\s)+/', ' ', $string);
$str = 'Why do I
have so much white space?';
$str = preg_replace('/\s{2,}/', ' ', $str);
var_dump($str); // string(34) "Why do I have so much white space?"
See it! (\ s에 흰색 자)
한정자 +
을 사용할 수도 있습니다. 왜냐하면 항상 r 그것을 와 배치합니다. 그러나, 귀하의 의도를 명확하게 보여주기 위해
{2,}
이 있습니다. 거기 preg_replace 문서
내 언어가 아니지만 여러 공백을 단일 공백으로 대체하는 것이 좋습니다. \s
은 공백을 나타내며 +
은 하나 이상의 공백을 의미합니다. 결국 g
은 전체적으로 (즉, 두 번 이상) 수행하는 것을 의미합니다.
예제에는'\ s \ s +'가 있습니다. 왜? 그들이 플러스 대신에 별표를 사용했는지 이해할 수 있습니다. 별표는 0 번 이상을 의미합니다. 따라서 정규식을 두 배로 늘려야합니다. 그러나 더하기는 하나 이상을 의미합니다. 특별한 이유가 있습니까? 여전히 작동해야하지만 불필요한 것처럼 보입니다. –
W. 나는 이유가 그것이 단지 2 개 이상의 공간에서 일치하도록하는 것이라고 생각한다. - 단 하나의 공간 만 있다면 교체 할 필요가 없다. 이것은 덧붙여 말하자면, '\ s {2,}'와 alex의 답처럼 동일합니다. –
아니 PHP 전문가에 여분의 공백을 제거하는 방법에 대한 예입니다 만, REGEX를위한 작업 같은 그의 소리 .... 다시
<?php
$string = 'Hello World and Everybody!';
$pattern = '/\s+/g';
$replacement = ' ';
echo preg_replace($pattern, $replacement, $string);
?>
은, PHP는
정규 표현식의 괄호는 필요하지 않습니다. – alex