Rust에서 문자열을 Int로 변환
Nilesh Katuwal
2023년6월21일
이 기사에서는 Rust에서 문자열을 int로 변환하는 방법을 알려줍니다.
Rust에서 str::parse::()
메서드를 사용하여 문자열을 Int로 변환
str::parse::()
메서드를 사용하여 문자열을 int로 직접 변환할 수 있습니다.
let string_value = "27".to_string();
let int_value = string_value.parse::<i32>().unwrap();
예제 코드:
fn main() {
let mut string_one: &str = "789";
let mut i = match string_one.parse::<i32>() {
Ok(i) => i,
Err(_e) => -1,
};
println!("{:?}", i);
}
출력:
789
이제 문자열 표현인 a
에서 정수 값 i
를 추출합니다. 다음 코드를 살펴보겠습니다.
예제 코드:
fn main() {
let mut a = "789";
let mut i: i32 = a.parse().unwrap_or(0);
println!("{:?}", i);
a = "12u3";
i = a.parse().unwrap_or(0);
println!("{:?}", i);
}
출력:
789
0
usize
와 같은 특정 유형으로 구문 분석하려면 if-let
문에서 특수 Rust turbofish
연산자를 사용하여 usize
로 구문 분석할 수 있습니다.
예제 코드:
fn main() {
let data = "60606";
if let Ok(result) = data.parse::<usize>() {
println!("USIZE RESULT: {}", result);
}
}
출력:
USIZE RESULT: 60606
다른 문자열 안에 숫자가 있으면 get()
함수를 사용하여 해당 문자열에서 슬라이스를 추출할 수 있습니다. 그런 다음 숫자를 구문 분석할 수 있습니다.
예제 코드:
fn main() {
let value = "a 6789 b";
let inner_part = value.get(2..value.len() - 2).unwrap();
println!("INNER PART: {}", inner_part);
// Tp parse inner part.
let result: u32 = inner_part.parse().unwrap();
println!("PARSED: {0}", result);
}
출력:
INNER PART: 6789
PARSED: 6789