2026년 상식닷컴 선정 식당 & 카페 리스트
최근에 오픈한 호텔을 찾는다면 살펴보세요

루아에서 문자열 포맷팅은 어떻게 하나요?

_____
Q: 루아에서 문자열 포맷팅은 어떻게 하나요?

A: 루아에서는 문자열 포맷팅을 위해 `string.format` 함수를 사용합니다. 이 함수는 C 언어의 `printf` 스타일 포맷 지정자를 사용하여 문자열을 포맷합니다.

예시:
```lua
local name = "Alice"
local age = 30
local formatted = string.format("이름: %s, 나이: %d", name, age)
print(formatted) -- 출력: 이름: Alice, 나이: 30
```

주요 포맷 지정자:
- `%s` : 문자열
- `%d` 또는 `%i` : 정수
- `%f` : 부동소수점 숫자
- `%x` : 16진수 정수
- `%o` : 8진수 정수

포맷 옵션 예:
```lua
local pi = 3.14159
print(string.format("원주율: %.2f", pi)) -- 출력: 원주율: 3.14
```

또한, `%` 문자를 출력하려면 `%%`를 사용합니다.

요약하자면, 루아에서 문자열 포맷팅은 `string.format` 함수를 활용하며, C 스타일 포맷 지정자를 사용하여 다양한 데이터 타입을 포맷할 수 있습니다.
루아(Lua)에서 문자열 포맷팅은 `string` 라이브러리의 `string.format` 함수를 사용하여 수행할 수 있습니다.

이 함수는 C 언어의 `printf` 스타일 포맷팅을 지원하며, 다양한 데이터 타입을 문자열로 변환하고, 원하는 형식으로 출력할 수 있게 해줍니다.

기본 사용법 `string.format` 함수의 기본 구문은 다음과 같습니다: ```lua string.format(formatString, ...) ``` - `formatString`: 포맷 문자열로, 출력할 형식을 정의합니다.

- `...`: 포맷 문자열에 삽입할 값들입니다.

포맷 문자열 포맷 문자열은 특정한 형식 지정자를 포함할 수 있으며, 이 형식 지정자는 출력할 데이터의 타입과 형식을 정의합니다.

주요 형식 지정자는 다음과 같습니다: - `%s`: 문자열 - `%d`: 정수 - `%f`: 부동 소수점 숫자 - `%x`: 16진수 - `%o`: 8진수 - `%c`: 문자 (ASCII 코드에 해당하는 문자) - `%p`: 포인터 (테이블의 메모리 주소) 예제 1. 기본 문자열 포맷팅 ```lua local name = "Alice" local age = 30 local formattedString = string.format("My name is %s and I am %d years old.", name, age) print(formattedString) -- 출력: My name is Alice and I am 30 years old. ```

2. 부동 소수점 숫자 포맷팅 ```lua local pi =

3.14159 local formattedPi = string.format("Pi is approximately %.2f", pi) print(formattedPi) -- 출력: Pi is approximately

3.14 ```

3. 여러 형식 지정자 사용 ```lua local item = "apple" local quantity = 5 local price = 0.99 local formattedOutput = string.format("You bought %d %ss for $%.2f each.", quantity, item, price) print(formattedOutput) -- 출력: You bought 5 apples for $0.99 each. ```

4. 정렬 및 너비 지정 포맷 문자열에서 정렬 및 너비를 지정할 수도 있습니다.

예를 들어, `%10s`는 10자리 너비의 문자열을 오른쪽 정렬하고, `%-10s`는 왼쪽 정렬합니다.

```lua local name = "Bob" local formattedName = string.format("|%10s|%-10s|", name, name) print(formattedName) -- 출력: | Bob|Bob | ``` 주의사항 - 포맷 문자열에서 지정자와 값의 개수가 일치해야 합니다.

그렇지 않으면 오류가 발생합니다.

- 포맷팅할 값의 타입이 지정자와 일치하지 않으면 예상치 못한 결과가 발생할 수 있습니다.

결론 루아의 `string.format` 함수는 문자열 포맷팅을 간편하게 할 수 있는 강력한 도구입니다.

다양한 형식 지정자를 활용하여 문자열을 원하는 형식으로 변환할 수 있으며, 이를 통해 출력의 가독성을 높이고, 프로그램의 유용성을 향상시킬 수 있습니다.

작성자: 정수아 [비회원] | 작성일자: 1년 전 2024-12-05 19:51:36
조회수: 182 | 댓글: 0 | 좋아요: 0 | 싫어요: 0
내용이 부정확하다면 싫어요를 클릭해주세요.