grep 명령에서 한글 문자열을 검색하는 방법은 영문 문자열과 별반 다르지 않다. 다만, 범위를 지정할 경우에는 펄 호환 정규식(perl compatible regular expression, PCRE)을 사용할 수 있는 -P 옵션을 필요로 한다. 아래의 예시를 보자.
# "가나" 포함 문자열 찾기
echo "가나다라" | grep "가나"
가나다라
# "나" 또는 "다" 포함 문자열 찾기
echo "가나" | grep "[나다]"
가나
한글 문자열의 범위를 지정하려면 -P 옵션을 사용하며, 한글 전체의 범위는 "[ㄱ-힣]" 이렇게 된다. 아래의 예시를 보자.
# 한글 검색(-P 옵션 필요)
echo "가나다라" | grep -P "[ㄱ-힣]"
가나다라
만약 'ㄱ'으로 시작되는 글자가 들어간 부분을 찾고자 할 경우 범위는 "[ㄱ-깋]" 이렇게 된다. 아래의 예시를 보자.
# 'ㄴ'으로 시작되는 글자가 포함된 문자열 찾기
echo "가나다라" | grep -P "[ㄴ-닣]"
가나다라
# 'ㄱ' 또는 'ㄷ'으로 시작되는 글자가 포함된 문자열 찾기
echo "가나다라" | grep -P "[ㄱ-깋ㄷ-딯]"
가나다라
# "가나" 포함 문자열 찾기
echo "가나다라" | grep "가나"
가나다라
# "나" 또는 "다" 포함 문자열 찾기
echo "가나" | grep "[나다]"
가나
한글 문자열의 범위를 지정하려면 -P 옵션을 사용하며, 한글 전체의 범위는 "[ㄱ-힣]" 이렇게 된다. 아래의 예시를 보자.
# 한글 검색(-P 옵션 필요)
echo "가나다라" | grep -P "[ㄱ-힣]"
가나다라
만약 'ㄱ'으로 시작되는 글자가 들어간 부분을 찾고자 할 경우 범위는 "[ㄱ-깋]" 이렇게 된다. 아래의 예시를 보자.
# 'ㄴ'으로 시작되는 글자가 포함된 문자열 찾기
echo "가나다라" | grep -P "[ㄴ-닣]"
가나다라
# 'ㄱ' 또는 'ㄷ'으로 시작되는 글자가 포함된 문자열 찾기
echo "가나다라" | grep -P "[ㄱ-깋ㄷ-딯]"
가나다라







덧글