2013-02-17 4 views
0

나는 PHP와 함께 cURL을 사용하여 DOM과 일부 HTML 컨텐트를 구문 분석합니다. 그런 다음 내용을 문자열로 변수에 넣고 배열을 만듭니다.줄 바꿈 식별 및 삭제

가 여기 내 문제 야, 내가

Array (
[firstname] => John 
[lastname] => 


Doe 
[occupation] => 
programmer 

[location] => not far away 
) 

같은 것을 가지고 나는 HTML에서 <br> 태그에 의해 발생되지 않는 일부 줄 바꿈을 얻었다. 코드에서 (공백) 줄 바꿈을 볼 수 있지만 태그가 없습니다.

연관 배열에 넣기 전에 str_replace('\s', '', $firstname)과 같은 코드를 사용하려고했지만 작동하지 않습니다. 내가 추가 할 것이다 preg_replace('\s','', $firstname)NULL

+0

당신이 줄 바꿈으로 수행 할 수 있습니까? 그냥 그들을 제거? –

+0

예. 하지만 \ trimed와'preg_replace'를 \ s로 시도했는데 그걸 제거 할 수 없습니다. – Wistar

답변

3

str_replace는 정규식을 허용하지 않습니다. 이 그들이 정상적인 공간이 아닌 한 후 작동하지 않는 경우에 어쩌면 그냥 ...

$array = array_map('trim', $array); 

을 한 후 배열을 트림. 사용 ...

preg_replace('~^[\s]+|[\s]+$~', '', $firstname); 

... 배열에 추가하기 전에 ... 구획 문자를 잊어 버렸습니다.

+0

힌트를 보내 주셔서 감사합니다. 그러나 이것은 작동하지 않습니다. 결과는 같습니다. – Wistar

+0

공백이'trim()'함수에 대해 나열된 문자에 의해 생성되는 한 이것이 작동 할 것이라고 확신합니다. http://www.php.net/manual/en/function.trim.php – CodeZombie

+0

@ Wistar - 나의 편집을 확인하십시오. – Galen

0

시도 :

foreach($array as &$v){ 
    $v = preg_replace('/(\n¦\r)+/s', '', $v); 
}