다음을 통해 공유


substring 함수

두 번째 인수에 지정된 위치에서 시작하고 세 번째 인수에 길이가 지정된 첫 번째 인수의 부분 문자열을 반환합니다.

string substring(string, number, number?)

주의

이 문자열의 각 문자에는 숫자로 나타낸 위치가 있습니다. 즉, 첫 번째 문자의 위치는 1, 두 번째 문자의 위치는 2와 같은 방식으로 숫자 위치가 지정됩니다.

세 번째 인수를 지정하지 않으면 두 번째 인수에 지정된 위치에서 시작하여 문자열 끝까지 계속되는 부분 문자열을 반환합니다.

인수가 문자열 형식이 아닌 경우 먼저 string() 함수를 사용하여 문자열로 변환된 다음 이 변환 결과가 평가됩니다.

경고

이 함수에 인수로 전달되는 노드 집합의 문자열변환으로 인해 예기치 않은 결과가 나타날 수 있습니다.자세한 내용은 string 함수을 참조하십시오.

이 함수는 대/소문자를 구분합니다.

다음 함수 호출은 "234"를 반환합니다.

substring("12345",2,3)

다음 함수 호출은 "2345"를 반환합니다.

substring("12345",2)

반환된 부분 문자열에는 문자 위치가 두 번째 인수를 반올림한 값보다 크거나 같은 문자가 포함되고 세 번째 인수를 지정한 경우 문자 위치가 두 번째 인수를 반올림한 값과 세 번째 인수를 반올림한 값의 합계보다 작은 문자가 포함됩니다.여기에는 표준 IEEE 754 규칙을 준수하는 비교와 더하기 연산이 사용됩니다. 반올림은 round() 함수를 호출하여 수행됩니다.

다음 예제는 예외적인 경우를 나타냅니다.

substring("12345", 1.5, 2.6)은 "234"를 반환합니다.

substring("12345", 0, 3)은 "12"를 반환합니다.

substring("12345", 0 div 0, 3) 반환 ""

substring("12345", 1, 0 div 0) 반환 ""

substring("12345", -42, 1 div 0) 반환 "12345"

substring("12345", -1 div 0, 1 div 0) 반환 ""

이 예제에서는 앞의 substring() 식을 보여 줍니다.

XML 파일

없음. XSLT 파일은 자신을 호출합니다.

XSLT 파일(substring.xsl)

<?xml version='1.0'?>
<xsl:stylesheet version="1.0"
      xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">
   substring("12345",2,3) = 
      <xsl:value-of select='substring("12345",2,3)'/><br/>
   substring("12345",2) = 
      <xsl:value-of select='substring("12345",2)'/><br/>
   substring("12345", 1.5, 2.6) = 
      <xsl:value-of select='substring("12345", 1.5, 2.6)'/><br/>
   substring("12345", 0, 3) = 
      <xsl:value-of select='substring("12345", 0, 3)'/><br/>
   substring("12345", 0 div 0, 3) = 
      <xsl:value-of select='substring("12345", 0 div 0, 3)'/><br/>
   substring("12345", 1, 0 div 0) = 
      <xsl:value-of select='substring("12345", 1, 0 div 0)'/><br/>
   substring("12345", -42, 1 div 0) = 
      <xsl:value-of select='substring("12345", -42, 1 div 0)'/><br/>
   substring("12345", -1 div 0, 1 div 0) = 
      <xsl:value-of select='substring("12345", -1 div 0, 1 div 0)'/>
</xsl:template>

</xsl:stylesheet>

서식이 지정된 출력

substring("12345",2,3) = 234 substring("12345",2) = 2345 substring("12345", 1.5, 2.6) = 234 substring("12345", 0, 3) = 12 substring("12345", 0 div 0, 3) = substring("12345", 1, 0 div 0) = substring("12345", -42, 1 div 0) = 12345 substring("12345", -1 div 0, 1 div 0) =

프로세서 출력

<?xml version="1.0" ?> substring("12345",2,3) = 234<br /> substring("12345",2) = 2345<br /> substring("12345", 1.5, 2.6) = 234<br /> substring("12345", 0, 3) = 12<br /> substring("12345", 0 div 0, 3) = <br /> substring("12345", 1, 0 div 0) = <br /> substring("12345", -42, 1 div 0) = 12345<br /> substring("12345", -1 div 0, 1 div 0) =

참고 항목

참조

XML 데이터 형식 참조