translate 함수
두 번째 인수 문자열의 문자를 세 번째 인수 문자열에서 같은 위치에 있는 문자로 바꾼 첫 번째 인수 문자열을 반환합니다.
string translate(string, string, string)
주의
이 함수는 첫 번째 인수에서 문자 매핑을 제공합니다.두 번째 인수와 세 번째 인수는 매핑 구성표를 설명합니다.
다음 함수 호출은 "BAr"을 반환합니다.
translate("bar","abc","ABC")
두 번째 인수 문자열이 세 번째 인수 문자열보다 길기 때문에 두 번째 인수 문자열에 문자가 있지만 세 번째 인수 문자열의 같은 위치에 문자가 없을 경우 첫 번째 인수 문자열에 발생하는 문자가 제거됩니다.
다음 함수 호출은 "AAA"를 반환합니다.
translate("--aaa--","abc-","ABC")
두 번째 인수 문자열에서 문자가 두 번 이상 발생할 경우 첫 번째로 나타난 문자로 인해 대체 문자가 결정됩니다.세 번째 인수 문자열이 두 번째 인수 문자열보다 길 경우 초과 문자는 무시됩니다.
인수가 문자열 형식이 아닌 경우 먼저 string() 함수를 사용하여 문자열로 변환된 다음 이 변환 결과가 평가됩니다.
경고
이 함수에 인수로 전달되는 노드 집합의 문자열변환으로 인해 예기치 않은 결과가 나타날 수 있습니다.자세한 내용은 string 함수을 참조하십시오.
이 함수는 대/소문자를 구분합니다.
예
이 예제에서는 앞의 translate() 식을 보여 줍니다.
XML 파일
없음. XSLT 파일은 자신을 호출합니다.
XSLT 파일(translate.xsl)
<?xml version='1.0'?>
<?xml-stylesheet type="text/xsl" href="translate.xsl"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
translate("bar","abc","ABC") =
<xsl:value-of select='translate("bar","abc","ABC")'/>
<br/>translate("--aaa--","abc-","ABC") =
<xsl:value-of select='translate("--aaa--","abc-","ABC")'/>
</xsl:template>
</xsl:stylesheet>
서식이 지정된 출력
translate("bar","abc","ABC") = BAr translate("--aaa--","abc-","ABC") = AAA
프로세서 출력
<?xml version="1.0" encoding="UTF-16"?> translate("bar","abc","ABC") = BAr<br />translate("--aaa--","abc-","ABC") = AAA