2013-05-20 1 views
0

그래서 텍스트 파일을 읽고 이름 * : xxxxx와 같은 특정 필드를 가져 와서 xxx를 새 파일로 저장해야합니다. Regex를 사용하여 xxxx를 가져 와서 저장했습니다. 텍스트 파일과 그 잘 작동, 유일한 문제는 name * 같은 빈 필드를 찾을 때 : preg_match 그들을 건너 뛰고 원하는 결과를 빈 공간으로 저장하는 것입니다.Preg_match 빈 문자열

else if (preg_match("/^Data\sde\semiss.o\sdo\sBI\:(.+)/", $line, $matches)) { 
      //print_r($matches); 
      $total[$titular][]=$matches[1] . ";"; 
    } 

데이터 드 emissão 할 BI :

Arquivo 드 Identificação : FUNCHAL

Nº 여기

내가 문제를 해결하기 위해 필요 내 코드와 파일의 비트입니다 Contribuinte * : 12341234

$ matc를 가져와야합니다. 후 공간과 동일한 시간 "데이터 드 emissão는 BI를 수행합니다"

preg_match("/^Data\sde\semiss.o\sdo\sBI\:(.*)/", $line, $matches) 

+ 일치 하나 또는 더 많은 그래서 난

답변

0

변경 +*에 (CSV 파일) 빈 셀을 채울 수 있습니다 앞에 오는 RE, *은 이전 RE의 0 이상과 일치합니다. 그래서 빈 문자열을 허용합니다.