GnuSmalltalkUsersGuide:BaseChapter 029

From 흡혈양파의 번역工房
Jump to navigation Jump to search
CharacterArray

CharacterArray

네임스페이스 Smalltalk에 정의됨

슈퍼클래스: ArrayedCollection

범주: 컬렉션-텍스트


나의 인스턴스들은 일반 텍스트(문자열) 데이터 타입을 표현한다. 나는 문자열에 대한 접근 및 조작 메서드를 제공한다.


CharacterArray 클래스: 기본

fromString: aCharacterArray

aCharacterArray와 같은 문자를 포함하는 수신자의 인스턴스를 구성하고 그것을 응답하라.

lineDelimiter

행 구분자로 사용 가능한 CharacterArray를 응답하라. CharacterArray의 서브클래스에 사용되도록 의도한 것이다.


CharacterArray 클래스: 다중바이트 인코딩

isUnicode

수신자가 바이트로 보관하는지 (예: 인코딩된 형태) 문자를 보관하는지 응답하라 (true가 리턴 시).


CharacterArray: 빌드된 ins

valueAt: index

수신자의 index-th 문자 변수의 ASCII 값을 응답하라.

valueAt: index put: value

수신자의 index-th 색인된 인스턴스 변수에 (Character value: value) 보관하라.


CharacterArray: 비교하기

< aCharacterArray

수신자가 aCharacterArray보다 적은 경우 true를 리턴하는데 대·소문자 차이는 무시한다.

<= aCharacterArray

수신자가 aCharacterArray보다 적거나 같은 경우 true를 리턴하고 대·소문자 차이는 무시한다. 수신자가 aCharacterArray의 첫 하위문자열인 경우 aCharacterArray보다 적은 것으로 간주한다.

= aString

수신자의 항목이 aCollection 내의 항목과 일치하는지 응답하라.

> aCharacterArray

수신자가 aCharacterArray 보다 큰 경우 true를 리턴하고 대·소문자 차이는 무시한다.

>= aCharacterArray

수신자가 aCharacterArray보다 크거나 동일한 경우 true를 리턴하고 대·소문자 차이는 무시한다. aCharacterArray가 수신자의 첫 하위문자열(substring)인 경우 수신자보다 적은 것으로 간주한다.

indexOf: aCharacterArray matchCase: aBoolean startingAt: anIndex

수신자 내에서 aCharacterArray 패턴에 일치하는 색인의 Interval을 응답하라. aCharacterArray 내의 #는 '어떤 문자에도 일치한다'를 의미하고, aCharacterArray 내의 *는 '어떤 문자 시퀀스에도 일치한다'는 의미다. 리턴된 interval의 첫 번째 항목은 >=anIndex 이다. aBoolean이 false인 경우 검색은 대·소문자 상관 없이 이루어지고, 그 외의 경우는 대·소문자를 신경 써야 한다. 어떤 Interval도 패턴에 일치하지 않으면 nil을 응답하라.

match: aCharacterArray

aCharacterArray가 수신자에 포함된 패턴에 일치하는지 여부를 응답하라. 수신자 내의 #는 '어떤 문자에도 일치한다'를 의미하고, 수신자 내의 *는 '어떤 문자 시퀀스에도 일치한다'는 의미다.

match: aCharacterArray ignoreCase: aBoolean

aCharacterArray가 수신자에 포함된 패턴에 일치하는지 여부를 응답하라. 수신자 내의 #는 '어떤 문자에도 일치한다'를 의미하고, 수신자 내의 *는 '어떤 문자 시퀀스에도 일치한다'는 의미다. aBoolean이 true인 경우 알파벳 문자의 대소문자는 무시된다.

sameAs: aCharacterArray

수신자가 aCharacterArray와 동일한 CharacterArray인 경우 true를 리턴하는데 대·소문자 차이는 무시한다.


CharacterArray: 변환하기

asByteArray

ASCII 값의 ByteArray로 변환된 수신자를 리턴하라.

asClassPoolKey

클래스 풀 dictionary에 넣을 준비가 된 수신자를 리턴하라.

asGlobalKey

스몰토크 dictionary에 넣을 준비가 된 수신자를 리턴하라.

asInteger

입력 문자가 무효할 때까지 수신자로부터 Integer 숫자를 파싱하고 이 시점에서 결과를 응답하라.

asLowercase

self의 복사본을 소문자 CharacterArray로서 리턴하라.

asNumber

입력 문자가 무효할 때까지 수신자로부터 Number를 파싱하고 이 시점에서 결과를 응답하라.

asPoolKey

풀 dictionary에 넣을 준비가 된 수신자를 리턴하라.

asString

난 이미 String이다! 정말이다!

asSymbol

CharacterArray에 상응하는 부호를 리턴한다.

asUnicodeString

문자의 코드가 수신자의 내용에 해당하는 UnicodeString을 응답하라. I18N 패키지를 로드하지 않는 이상 구현되지 않는다.

asUppercase

self의 복사본을 대문자 CharacterArray로서 응답하라.

fileName

그렇지만 나는 파일명을 갖고 있지 않다!

filePos

그렇지만 나는 파일 위치를 갖고 있지 않다!

isNumeric

수신자가 숫자를 의미하는지를 응답하라.

trimSeparators

앞이나 뒤에 공백 없이 수신자의 복사본을 리턴하라. 구현은 'all blanks' case로부터 보호된다.


CharacterArray: 다중바이트 인코딩

encoding

수신자가 사용하는 인코딩을 응답하라.

isUnicode

수신자가 바이트로 보관하는지 (예: 인코딩된 형태) 문자를 보관하는지 응답하라 (true가 리턴 시).

numberOfCharacters

수신자 내에 Unicode 문자의 수를 응답하라. I18N 패키지를 로드하지 않는 이상 구현되지 않는다.


CharacterArray: 문자열 처리

% anArray

%n마다 (1<=n<=9) anArray의 n번째 요소로 대체하여 수신자를 응답하라. 대체된 요소는 '표시'된다 (예: 그들의 displayString이 사용된다). 또한 특수 패턴 %<trueString|falseString>n 은 anArray의 n번째 요소가 true이냐 false이냐에 따라 두 개의 문자열 중 하나로 대체된다.

bindWith: s1

모든 %1을 s1의 displayString으로 대체하여 수신자를 응답하라.

bindWith: s1 with: s2

모든 %1 또는 %2를 각각 s1 또는 s2로 대체하여 수신자를 응답하라. s1과 s2는 대체 시 '표시'된다 (예: 그들의 displayString이 사용된다).

bindWith: s1 with: s2 with: s3

모든 %1, %2, 또는 %3을 각각 s1, s2 또는 s3로 대체하여 수신자를 응답하라. s1, s2, s3은 대체 시 '표시'된다 (예: 그들의 displayString이 사용된다).

bindWith: s1 with: s2 with: s3 with: s4

모든 %1, %2, %3 또는 %4를 각각 s1, s2, s3 또는 s4로 대체하여 수신자를 응답하라. s1, s2, s3, s4는 대체 시 '표시'된다 (예: 그들의 displayString이 사용된다).

bindWithArguments: anArray

모든 %n은 (1<=n<=9) anArray의 n번째 요소로 대체하여 수신자를 응답하라. 대체된 요소는 '표시'된다 (예: 그들의 displayString이 사용된다). 또한 특수 패턴 %<trueString|falseString>n 은 anArray의 n번째 요소가 true이냐 false이냐에 따라 두 개의 문자열 중 하나로 대체된다.

contractTo: smallSize

나 자신(myself)을 리턴하거나, 원(점 세 개: ...)을 삽입하여 smallSize 문자로 줄인 복사본을 리턴하라.

lines

수신자 내 각각이 하나의 행을 표현하는 Strings의 Array를 응답하라.

linesDo: aBlock

수신자 내 새 행을 구분하는 행마다 aBlock을 한 번씩 평가하고 행을 블록으로 전달하라.

subStrings

수신자의 하위문자열에 해당하는 OrderedCollection을 응답하라. 새 하위문자열은 수신자의 시작 시 또는 흰 공백 문자의 시퀀스마다 그 이후부터 시작한다.

subStrings: aCharacter

수신자의 하위문자열에 해당하는 OrderedCollection을 응답하라. 새 하위문자열은 수신자의 시작 시 또는 aCharacter에 일치하는 문자의 시퀀스마다 그 이후부터 시작한다.

substrings

수신자의 하위문자열에 해당하는 OrderedCollection을 응답하라. 새 하위문자열은 수신자의 시작 시 또는 흰 공백 문자의 시퀀스마다 그 이후부터 시작한다. 해당 메시지는 이전 버전과의(backwards) 호환을 위해 보호된다; ANSI 표준은 대문자 s가 사용되는 'subStrings'의 표기법을 준수한다.

subSstrings: aCharacter

수신자의 하위문자열에 해당하는 OrderedCollection을 응답하라. 새 하위문자열은 수신자의 시작 시 또는 aCharacter에 일치하는 문자의 시퀀스마다 그 이후부터 시작한다. 해당 메시지는 이전 버전과의(backwards) 호환을 위해 보호(reserve)된다; ANSI 표준은 대문자 s가 사용되는 'subStrings'의 표기법을 준수한다.


CharacterArray: 기능 검사하기

isCharacterArray

'true'를 응답하라.


Notes