0
PHP에서 간단한 텍스트 번역기를 만들려고합니다. 코드 언어는 여기regex는 이름 (하위) 그룹을 통해 XML과 유사한 태그의 값을 추출/대체합니다.
Blabla <translator id="TEST"/>
선택이 될 수
Bla bla {translator id="TEST" language="de"/}
됩니다 :
이 같은 일치 shoult
$result = preg_replace_callback(
'#{translator(\s+(?\'attribute\'\w+)="(?\'value\'\w+)")+/}#i',
array($this, 'translateTextCallback'),
$aText
);
은 그것은 "속성"을 추출, 그러나 페치 마지막 하나. 필자의 첫 번째 생각은 PHP가 모든 매치마다 (명명 된) 배열 요소를 덮어 쓸 때 그룹 명명과 관련이있다. 그러나 이름을 지정하지 않은 그룹을 제외하면 마지막 일치 항목 만 반환됩니다. 여기
예를Array
(
[0] => {translator id="TEST" language="de"/}
[1] => language="de"
[attribute] => language
[2] => language
[value] => de
[3] => de
)
@void : 안녕하세요. Welcome to StackOverflow! 나는 코드의 일부를 포맷하기 위해 게시물을 편집 할 자유를 취 했으므로 읽기가 더 쉽습니다. 다음 질문에 대해서는 편집 상자 상단에 0과 1이 표시된 아이콘을 사용하여 수행 할 수 있습니다. 필요한 경우 "질문하기"페이지 오른쪽에 질문/답변 작성에 사용할 수있는 구문 참조를 가리키는 링크가 있습니다 :-) –