이 사용을 위해 문자 클래스를 사용하지 마십시오. 또는 Seperator |
이것은 당신에게 올바른 출력을 제공해야합니다.
preg_split("/, | and /",$data)
다음 출력을 제공합니다.
Array
(
[0] => Rosemary J. Harris $^{1}$
[1] => Vladislav Popkov $^{2}$
[2] => Gunter M. Sch\"utz $^{3,}$*
)
문제
이 문자열이 있습니다.
Rosemary J. Harris $^{1}$, Vladislav Popkov $^{2}$ and Gunter M. Sch\"utz $^{3,}$*
그리고 나는 그것을 쉼표 (,) 또는 "및"문자열로 나누고 싶다.
따라서 결과는 다음과 같습니다.
[0] -> Rosemary J. Harris $^{1}$
[1] -> Vladislav Popkov $^{2}$
[2] -> Gunter M. Sch\"utz $^{3,}$*
나는 이것을 시도했다 :
$splitAuthors = preg_split('/[, ]+[ and ]/', $authors);
반환 중 :
[0] -> Rosemary J. Harris $^{1}$
[1] -> Vladislav Popkov $^{2}$
[2] -> nd Gunter M. Sch\"utz $^{3,}$*
마지막 배열 항목에는 "ND"가 있습니다.
도와 주셔서 감사합니다.
해결책
이 사용을 위해 문자 클래스를 사용하지 마십시오. 또는 Seperator |
이것은 당신에게 올바른 출력을 제공해야합니다.
preg_split("/, | and /",$data)
다음 출력을 제공합니다.
Array
(
[0] => Rosemary J. Harris $^{1}$
[1] => Vladislav Popkov $^{2}$
[2] => Gunter M. Sch\"utz $^{3,}$*
)
다른 팁
[]
정의 a 캐릭터 클래스. 이것들은 단일 캐릭터와 일치하며, 그 캐릭터는 수업의 캐릭터 중 하나 일 수 있습니다. 그래서 당신은 그 지점이 공간, a
, an n
,, a d
. 그것은 세상을 찾고 있지 않습니다 "와"양쪽에 공간이 있습니다. 당신은 아마 원할 것입니다 ( and )
대신에.