[go] 문자열에서 특정 패턴에 맞는 부분 추출하기

예를 들어, “Hello, my email is example@email.com, please contact me!” 라는 문자열이 있다고 가정해 봅시다. 여기서 “example@email.com” 이라는 이메일 주소를 추출하고 싶다면 다음과 같이 할 수 있습니다.

package main

import (
	"fmt"
	"regexp"
)

func main() {
	str := "Hello, my email is example@email.com, please contact me!"
	re := regexp.MustCompile(`[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}`)
	email := re.FindString(str)
	fmt.Println(email)
}

이 코드에서는 regexp 패키지를 사용하여 정규 표현식을 정의하고, FindString 함수를 사용하여 문자열에서 해당 패턴에 맞는 부분을 추출합니다.

이 예제에서는 간단한 이메일 주소의 패턴을 사용하였지만, 복잡한 패턴에 따라 다른 정규 표현식을 사용할 수 있습니다. 자신이 원하는 패턴에 맞게 정규 표현식을 작성하여 문자열에서 원하는 부분을 추출할 수 있습니다.

참고 자료: