문자열 마지막 위치 찾기 함수

이 문서는 string_last_pos_ext 함수에 대해 설명합니다. 이 함수는 주어진 문자열에서 특정 서브 문자열의 위치를 찾는 기능을 제공합니다. 검색은 주어진 시작 위치에서 문자열의 끝 방향으로 진행됩니다. 만약 서브 문자열이 발견되지 않으면 0을 반환하고, 발견되면 서브 문자열의 첫 번째 문자의 위치를 반환합니다. 주의할 점은 레거시 지원을 위해 문자열의 인덱스가 1부터 시작한다는 것입니다. 즉, 문자열의 첫 번째 위치는 1입니다.

문법

string_last_pos_ext(substr, str, start_pos);

인수 설명

인수 이름 타입 설명
substr String 문자열 내에서 찾고자 하는 서브 문자열.
str String 검색할 전체 문자열.
start_pos Real 검색을 시작할 위치.

반환값

  • Real: 서브 문자열의 위치 또는 0.

예제

if (string_last_pos_ext(",", text, 20) != 0) {
    string_insert(name, text, string_last_pos_ext(",", text, 20));
}

위의 코드는 변수 "text"에 저장된 문자열에서 20번째 문자 이전에 쉼표를 검색합니다. 만약 쉼표가 발견되면, "name"이라는 서브 문자열을 해당 위치에 삽입합니다.

활용 예제

  1. 문자열에서 특정 단어 찾기 gml var position = string_last_pos_ext("apple", fruit_list, 50); if (position != 0) { show_message("사과가 " + string(position) + " 위치에 있습니다."); }
  2. 문자열에서 마지막 공백 찾기 gml var last_space = string_last_pos_ext(" ", sentence, string_length(sentence)); if (last_space != 0) { var first_part = string_copy(sentence, 1, last_space - 1); var second_part = string_copy(sentence, last_space + 1, string_length(sentence)); }
  3. 특정 기호로 문자열 나누기 gml var last_comma = string_last_pos_ext(",", data_string, string_length(data_string)); if (last_comma != 0) { var before_comma = string_copy(data_string, 1, last_comma - 1); var after_comma = string_copy(data_string, last_comma + 1, string_length(data_string)); }
  4. 문자열에서 특정 패턴 찾기 gml var last_pattern = string_last_pos_ext("pattern", log_data, string_length(log_data)); if (last_pattern != 0) { log("패턴이 " + string(last_pattern) + " 위치에서 발견되었습니다."); }
  5. 문자열에서 마지막 숫자 찾기 gml var last_digit = string_last_pos_ext("0", number_string, string_length(number_string)); if (last_digit != 0) { var number_found = string_copy(number_string, last_digit, 1); }