문자열에서 부분 문자열을 가져와야하는 Excel에서 매크로를 작성하고 있습니다. 이것은 이와 같습니다.문자열의 특정 부분을 가져 오는 방법
~/tester/test/hai/bye
~/stack/overflow/hai/bye
위의 경우 나는 첫 번째 것에서 String 테스터를 가져와 두 번째 것에서 스택해야합니다. InStr
을 사용해 보았지만 유용하지 않습니다. 누구든지 도와 줄 수 있습니까?
문자열에서 부분 문자열을 가져와야하는 Excel에서 매크로를 작성하고 있습니다. 이것은 이와 같습니다.문자열의 특정 부분을 가져 오는 방법
~/tester/test/hai/bye
~/stack/overflow/hai/bye
위의 경우 나는 첫 번째 것에서 String 테스터를 가져와 두 번째 것에서 스택해야합니다. InStr
을 사용해 보았지만 유용하지 않습니다. 누구든지 도와 줄 수 있습니까?
InStr 및 Mid 기능을 사용하여이 작업을 수행 할 수 있습니다. 관심있는 문자열의 일부를 얻을 수 중순를 사용하여 다음의 항목을 찾기 위해 InStr이 기능을 사용하여 /과
을보십시오이 :.
Function ExtractFirstPartOfPath(path as String) as String
Dim first, second as Integer
first = InStr(path, "/")
second = InStr(first + 1, path, "/")
ExtractFirstPartOfPath = Mid(path, first + 1, second - first - 1)
End Function
이 기능은 원하는 결과를 얻을 수 .
이 시도 :
Sub Macro1()
Dim text As String, result As String
text = "~/tester/test/hai/bye"
result = Mid(text, 3, InStr(3, text, "/") - 3)
'MsgBox is for demo only
MsgBox result
End Sub
를 지금까지 내가 Excel에서 어떤 정규식, 당신은 "손으로"당신이 원하는 것을 할 필요가 없습니다 알다시피.
Instr을 사용하면 다른 사람과 같이 할 수 있습니다.
분할을 사용하여 다른 솔루션 아래Function ExtractFirstPartOfPath(path as String) as String
Dim parts
parts = Split(path, "/")
ExtractFirstPartOfPath = parts(1)
End Function
(이 기능은 위의 엑셀 2000에서 사용할 수 있으며)