문자열 및 색인 알고리즘 예제
다음은 Substring 기본값 알고리즘을 사용하여 번호 속성의 처음 5자와 같도록 이름 속성을 설정하는 예제 규칙의 XML 단편입니다.
<AttrValue id=”name” algorithm=”wt.rule.algorithm.Substring”>
<Attr id=”number”/>
<Arg>0</Arg>
<Arg>5</Arg>
</AttrValue>
다음은 Substring 및 IndexOf 알고리즘을 사용하여 CAD 문서의 이름을 확장자가 제거된 CAD 이름과 같도록 설정하는 예제 규칙의 XML 단편입니다.
<AttrValue id="name" algorithm="wt.rule.algorithm.Substring">
<Attr id="CADName"/>
<Arg>0</Arg>
<Value algorithm="wt.rule.algorithm.IndexOf">
<Attr id="CADName"/>
<Arg>.</Arg>
</Value>
</AttrValue>
이 예제에서 사용되는 인수는 다음과 같습니다.
• 첫 번째 인수는 Attr 태그를 사용하여 원래 문자열을 나타냅니다(이 경우 원래 문자열은 속성).
• 두 번째 인수는 Arg 태그를 사용하여 서브 문자열의 시작 문자 색인을 나타냅니다. 여기서 0은 원래 문자열의 시작 문자 색인입니다.
• 세 번째 인수는 Value 태그를 사용하여 서브 문자열이 끝나는 문자의 색인을 결정합니다. Value 태그 안에는 IndexOf 알고리즘이 있으며, 이 알고리즘에서는 필요한 색인을 작성하기 위해 두 개의 추가 인수를 사용해야 합니다.
이 예제에서는 CAD 문서 이름의 파일 확장자 앞에 마침표가 하나뿐이라고 가정합니다.
CAD 문서 이름에 마침표가 여러 개 있으면 IndexOf 대신 LastIndexOf 알고리즘을 사용하여 다음과 같이 마지막 마침표 뒤의 자리를 제거할 수 있습니다.
<AttrValue id="name" algorithm="wt.rule.algorithm.Substring">
<Attr id="CADName"/>
<Arg>0</Arg>
<Value algorithm="wt.rule.algorithm.LastIndexOf">
<Attr id="CADName"/>
<Arg>.</Arg>
</Value>
</AttrValue>