Ruby는 문자열 처리에 매우 강력한 언어입니다. 그 중에서도 `gsub` 메서드는 문자열에서 특정 패턴을 찾아 다른 문자열로 대체하는 데 유용하게 사용됩니다. 이 글에서는 `gsub` 메서드의 기본 사용법과 다양한 예제를 통해 이 메서드를 어떻게 활용할 수 있는지 알아보겠습니다.
`gsub`는 "global substitution"의 약자로, 주어진 문자열에서 특정 패턴을 찾아서 다른 문자열로 대체하는 메서드입니다. 이 메서드는 원본 문자열을 변경하지 않고, 변경된 새로운 문자열을 반환합니다. `gsub`는 정규 표현식을 지원하므로, 복잡한 패턴 매칭도 가능합니다.
gsub 메서드는 다음과 같은 기본 문법을 가지고 있습니다:
string.gsub(pattern, replacement)
여기서 pattern
은 찾고자 하는 문자열이나 정규 표현식이며, replacement
는 대체할 문자열입니다.
이제 `gsub` 메서드를 사용하는 몇 가지 예제를 살펴보겠습니다.
가장 기본적인 사용법은 단순한 문자열을 대체하는 것입니다. 예를 들어, "Hello World"라는 문자열에서 "World"를 "Ruby"로 대체해 보겠습니다.
text = "Hello World"
new_text = text.gsub("World", "Ruby")
puts new_text # 출력: Hello Ruby
정규 표현식을 사용하면 더 복잡한 패턴을 찾고 대체할 수 있습니다. 예를 들어, 문자열에서 모든 숫자를 제거하고 싶다면 다음과 같이 할 수 있습니다.
text = "My phone number is 123-456-7890."
new_text = text.gsub(/\d/, "")
puts new_text # 출력: My phone number is --.
대체 문자열에 메서드를 사용할 수도 있습니다. 예를 들어, 대체할 문자열을 대문자로 변환하고 싶다면 다음과 같이 할 수 있습니다.
text = "hello world"
new_text = text.gsub("world") { |match| match.upcase }
puts new_text # 출력: hello WORLD
`gsub` 메서드는 다양한 상황에서 유용하게 사용될 수 있습니다. 아래는 몇 가지 활용 예시입니다.
웹 페이지에서 HTML 태그를 제거하는 예제를 살펴보겠습니다.
html_text = "Hello, World!
"
clean_text = html_text.gsub(/<.*?>/, "")
puts clean_text # 출력: Hello, World!
특수 문자를 다른 문자로 대체하는 예제입니다. 예를 들어, 문자열에서 모든 쉼표를 세미콜론으로 대체해 보겠습니다.
text = "apple, banana, cherry"
new_text = text.gsub(",", ";")
puts new_text # 출력: apple; banana; cherry
날짜 형식을 변환하는 예제입니다. "YYYY-MM-DD" 형식을 "DD/MM/YYYY" 형식으로 변환해 보겠습니다.
date = "2023-10-15"
new_date = date.gsub(/(\d{4})-(\d{2})-(\d{2})/, '\3/\2/\1')
puts new_date # 출력: 15/10/2023
`gsub` 메서드를 사용할 때 몇 가지 주의해야 할 점이 있습니다.
Ruby의 `gsub` 메서드는 문자열 대체를 위한 강력한 도구입니다. 간단한 문자열 대체부터 정규 표현식을 활용한 복잡한 대체까지 다양한 상황에서 유용하게 사용될 수 있습니다. 이 글에서 소개한 예제들을 통해 `gsub` 메서드를 활용하여 문자열을 효과적으로 처리할 수 있기를 바랍니다. Ruby를 사용하여 문자열을 다룰 때 `gsub` 메서드를 꼭 기억해 두세요!
© 2024 RailsInsights. All rights reserved.