텍스트를 다듬다 보면 스페이스, 띄워쓰기(white space) 여러개를 1개로 바꾸고 싶을 때가 있다.
이 경우, 정규식으로 간단하게 해결할 수 있다.
package main
import (
"regexp"
)
// RemoveMultiSpaces : 스페이스 삭제
func RemoveMultiSpaces(str string) string {
reLeadcloseWhtsp := regexp.MustCompile(`^[\s\p{Zs}]+|[\s\p{Zs}]+$`)
reInsideWhtsp := regexp.MustCompile(`[\s\p{Zs}]{2,}`)
result := reLeadcloseWhtsp.ReplaceAllString(str, "")
result = reInsideWhtsp.ReplaceAllString(result, " ")
return result
}
func main() {
input := " Hello World :) ! "
result := RemoveMultiSpaces(input)
}
'개발의 정석 > 언어' 카테고리의 다른 글
[#golang] html 태그 제거(strip tags) (0) | 2020.03.30 |
---|---|
[#golang] 맵에 키가 존재하는지 체크하는 방법 (0) | 2020.03.26 |
[#golang] 소스코드에서 커맨드 실행하기 (0) | 2020.03.26 |
[#golang] 디렉토리의 파일 리스트 찾기 (0) | 2020.03.26 |
[#python] 리스트 자유자재로 다루기 (0) | 2020.03.24 |
댓글