2010-07-26 11 views
0

switch 문을 사용하여 VALUES와 관련된 옵션을 일치시킨 다음 값을 추출합니다 (아무 것도 없거나 빈 문자열 일 수 있음).Tcl에서 공백은 빈 문자열입니까?

Tcl에서 이러한 동급입니까? 나는. 후행 공백이 옵션으로 제공되거나 파싱됩니까? 내가 "문자열을 다듬어야"하는 값을 입력해야합니까? 아니면 불필요한 값입니까?

+0

당신이 말하는 것에 대한 예를 들어 주겠니? –

+0

tcllib의'cmdline' 패키지가 도움이됩니까? http://tcllib.sourceforge.net/doc/cmdline.html –

답변

3

기본적으로 공백은 문자열의 시작 또는 끝에서 잘리지 않습니다. 결국, 때로는 중요 할 수 있습니다. 당신은 선행 및 후행 공백 사용을 제거하려는 경우 :

set str [string trim $str] 

당신은 각각 string trimleftstring trimright를 사용하여 선행 공백 또는 후행 공백을 제거 할 수 있습니다.

2

Tcl에서 공백은 공백 인 것과 같습니다. string?

공백이 빈 문자열과 같지 않습니다. TCL 8.5.2를 사용하면 expr {"" eq " "}이라는 표현식은 0으로 평가됩니다.

흰 공백은 옵션으로 제공되거나 구문 분석됩니까?

문자열을 그대로 사용하고 아무런 처리도 수행하지 않으면 공백이 생깁니다.

값을 "스트링 트림"해야합니까? 아니면 이 필요합니까?

답변은 응용 프로그램에 따라 다릅니다. 공백이 중요하지 않은 경우 strim trim 명령을 사용하여 잘라냅니다 (Donal Fellows 언급). 이렇게하면 논리가 단순해질 수 있습니다. regsub -all {\s+} $input_string { }을 사용하여 문자열 안에 반복되는 공백 문자를 모두 접을 수도 있습니다.

관련 문제