수색…


소개

INSTR FIND 및 LEN을 사용하는 MID LEFT 및 RIGHT 문자열 함수의 빠른 예제

어떻게 두 개의 검색어 사이에 텍스트를 찾으십니까 (말 : 콜론 뒤에 쉼표 앞에)? 어떻게 나머지 단어를 얻을 수 있습니까 (MID 사용 또는 오른쪽 사용)? 다음 중 0 기반 매개 변수와 리턴 코드를 사용하는 함수는 무엇입니까? 일이 잘못되면 어떻게됩니까? 그들은 빈 문자열, 근거없는 결과 및 음수를 어떻게 처리합니까?

자주 사용되는 문자열 조작

더 나은 MID () 및 다른 문자열 추출 예제, 현재 웹에서 부족합니다. 제가 좋은 모범을 보일 수있게 도와주세요. 이 같은:

DIM strEmpty as String, strNull as String, theText as String
DIM idx as Integer
DIM letterCount as Integer
DIM result as String

strNull = NOTHING
strEmpty = ""
theText = "1234, 78910"  

' -----------------
' Extract the word after the comma ", "  and before "910"  result: "78" ***
' -----------------

' Get index (place) of comma using INSTR
idx = ...   ' some explanation here
if idx < ... ' check if no comma found in text

' or get index of comma using FIND
idx = ...   ' some explanation here... Note: The difference is...
if idx < ...  ' check if no comma found in text

result = MID(theText, ..., LEN(...

' Retrieve remaining word after the comma
result = MID(theText, idx+1, LEN(theText) - idx+1)

' Get word until the comma using LEFT
result = LEFT(theText, idx - 1)

' Get remaining text after the comma-and-space using RIGHT
result = ...

' What happens when things go wrong
result = MID(strNothing, 1, 2)    ' this causes ...
result = MID(strEmpty, 1, 2) ' which causes...
result = MID(theText, 30, 2) ' and now...
result = MID(theText, 2, 999) ' no worries...
result = MID(theText, 0, 2)
result = MID(theText, 2, 0)
result = MID(theText -1, 2)
result = MID(theText 2, -1)
idx = INSTR(strNothing, "123")
idx = INSTR(theText, strNothing)
idx = INSTR(theText, strEmpty) 
i = LEN(strEmpty) 
i = LEN(strNothing) '...

이 예제를 편집하여 더 잘 만들 수 있습니다. 그것이 분명히 남아있는 한 그것에는 일반적인 사용 관행이 있습니다.



Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow