std::string의 rfind 오버로드를 사용하여 접두사 확인 및 하위 문자열을 Int로 변환
C std::string이 시작하는지 확인하려면 특정 문자열을 사용하여 하위 문자열을 정수로 변환하면 오버로드된 rfind 함수를 활용할 수 있습니다.
문자열 접두사 확인
검색을 허용하는 rfind 오버로드를 사용하세요. 위치 매개변수(pos). 이 매개변수를 0으로 설정하면 검색이 문자열의 시작 부분으로 제한됩니다.
<code class="cpp">std::string s = "tititoto"; if (s.rfind("titi", 0) == 0) { // The string s starts with the "titi" prefix. }</code>
하위 문자열을 Int로 변환
알려진 접두사 뒤의 하위 문자열을 추출하고 변환하려면 이를 정수로 변환하려면 rfind와 substr의 조합을 사용할 수 있습니다.
<code class="cpp">std::string arg = "--foo=98"; size_t pos = arg.rfind("--foo="); if (pos != std::string::npos) { std::string fooValue = arg.substr(pos + len("--foo=")); int value = std::stoi(fooValue); }</code>
이 예에서 arg가 "--foo=98"이면 변수 값에 정수 값 98이 할당됩니다.
STL의 장점
이 접근 방식을 사용하면 Boost와 같은 외부 라이브러리가 필요하지 않습니다. 구현하기 쉽고 효율적인 STL에서 제공하는 표준 문자열 조작을 활용합니다.
C 20 단순화
C 20 이상에서는 std:: string 및 std::string_view 클래스는 시작_with 메서드를 도입하여 접두사 확인을 더욱 간단하게 만듭니다.
<code class="cpp">std::string s = "tititoto"; if (s.starts_with("titi")) { // The string s starts with the "titi" prefix. }</code>
위 내용은 std::string\의 rfind를 사용하여 접두어를 확인하고 하위 문자열을 정수로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!