VB(A)/당근쨈 & Chronicle

[& Chronicle] 정규식으로 특수문자 제외하고 문자와 숫자만 분리하기

당근쨈 2019. 2. 15. 17:07

https://cafe.naver.com/excelmaster/160106에 올라온 질문입니다.


◁SOFT CREAM 120[G] 라는 텍스트가 있으면

특수문자를 제외하여 SOFT CREAM 120G 라는 결과물을 원하는 내용입니다.

정규식에서 Replace를 이용하여 영어, 숫자, 띄어쓰기만 제외하고 나머지는 없애는 코드를 짜면 됩니다.


Chronicle 님은 아래와 같이 풀었습니다.

텍스트를 워드에 복사해서 찾아 바꾸기를 하는 과정인데

워드에서도 정규식이 적용되는지도 몰랐습니다.

https://blog.naver.com/asaph16/221466733776


텍스트만추출.xlsm


Function GetText(tmp As StringAs String
 
    With CreateObject("Vbscript.regexp")
    
        .Global = True
        .ignorecase = True
        .Pattern = "[^a-z0-9 ]"
        
        If .test(tmp) Then
            GetText = .Replace(tmp, "")
        Else
            GetText = tmp
        End If
            
    End With
    
End Function
 
cs