2013-01-10 2 views
1

RegEx 및 WhiteSpace에 문제가 있습니다.RegEx preg_match_all() 및 PHP의 공백

내가 표시되어 배열에 텍스트를 분할 할 (....)

preg_match_all("/\([a-z0-9\s]+\)/i", $str,$a); 

내가 [S \] [040 \] 사용하려고 whithe 공간을 잡을 이에 아무것도를 위해 일하지 나를!

[어떤 문자 DIGIT와 WHITESPACES 및 특수 문자가] 부끄럽지 않습니까?

preg_match_all("/\([^\)]+\)/i", $str, $a);

+1

당신이 왜 사용하지 않는 [preg_split()] (HTTP "(...)로 표시된"무엇을 의미합니까 : //php.net/manual/en/function.preg-split.php) 나눠야한다면? – flu

답변

1

또한 "모든 문자 아니지만 )"귀하의 예제와

말했다 수 대신 (가능한 한 빨리 일치를 중지합니다. 탐욕에 비하면, 가능한 한 많이 일치하는 .*).

정규식 : \((.*?)\) 코드에서

:

preg_match_all("#\((.*?)\)#", $str, $a); 
+0

고마워요 :) – user1966380