>  기사  >  백엔드 개발  >  Go에서 두 문자 또는 문자열 사이의 하위 문자열을 추출하는 방법은 무엇입니까?

Go에서 두 문자 또는 문자열 사이의 하위 문자열을 추출하는 방법은 무엇입니까?

Barbara Streisand
Barbara Streisand원래의
2024-11-02 21:27:30589검색

How to Extract a Substring Between Two Characters or Strings in Go?

두 문자 또는 문자열 사이의 부분 문자열을 추출하는 코드를 작성하세요

문자열이 있고 그 안에서 특정 부분 문자열을 추출하려는 경우, Go는 이를 달성하기 위한 유연한 메커니즘을 제공합니다.

예를 들어 다음을 고려하세요. string:

<h1>Hello World!</h1>

하위 문자열 추출

"Hello World!"를 추출하려면 Go를 사용하여 이 문자열에서 다음 함수를 구현할 수 있습니다.

<code class="go">// GetStringInBetween Returns empty string if no start string found
func GetStringInBetween(str string, start string, end string) (result string) {
    s := strings.Index(str, start)
    if s == -1 {
        return
    }
    s += len(start)
    e := strings.Index(str[s:], end)
    if e == -1 {
        return
    }
    e += s + e - 1
    return str[s:e]
}</code>

함수 이해

이 함수는 세 가지 인수를 사용합니다.

  • str: 원래 문자열
  • start: 시작 문자열 또는 문자
  • end: 끝 문자열 또는 문자

다음과 같이 작동합니다.

  1. 원래 문자열에서 start의 첫 번째 인덱스를 찾습니다.
  2. 시작 인덱스에 시작 길이를 추가하여 시작 문자열을 효과적으로 건너뜁니다.
  3. 찾습니다. 조정된 시작 인덱스부터 시작하는 하위 문자열의 end 인덱스를 반환합니다.
  4. 찾은 end 인덱스에 조정된 시작 인덱스를 더해 끝 인덱스를 계산합니다.
  5. 마지막으로 조정된 시작 인덱스에서 끝 인덱스까지의 하위 문자열입니다.

샘플 사용법

이 함수를 사용하려면 원래 문자열, 시작 문자열, 끝 문자열을 전달하면 됩니다. 예:

start := "<h1"
end := "</h1>"
substring := GetStringInBetween("&lt;h1&gt;Hello World!&lt;/h1&gt;", start, end)
// substring will be "Hello World!"

위 내용은 Go에서 두 문자 또는 문자열 사이의 하위 문자열을 추출하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.