[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
함수를 사용하여 문자열에서 해당 패턴에 맞는 부분을 추출합니다.
이 예제에서는 간단한 이메일 주소의 패턴을 사용하였지만, 복잡한 패턴에 따라 다른 정규 표현식을 사용할 수 있습니다. 자신이 원하는 패턴에 맞게 정규 표현식을 작성하여 문자열에서 원하는 부분을 추출할 수 있습니다.
참고 자료: