devxlogo

Scanning for Words in a String

Scanning for Words in a String

Question:
I am currently writing an application to scan a text file for certain text keywords, and then copy the text (in between the kewords) into a new textfile. Could you please provide me with any tips/code/examples in order to do this optimally?

Answer:
You might want to try reading the whole file into a big string, and then using the InStr function to look for particular keywords. Do you have a particular beginning keyword and an ending keyword? If so, you can use InStr to find the first keyword and the last keyword. Each will give you a position number, as in this example:

Dim iStart as LongDim iEnd as LongDim sSubString as stringiStart = InStr(BigString, “Keyword_1”)iEnd = InStr(BigString, “Keyword_2”)
Then, you use the string manipulation functions, such as Mid$, to pull out the text between the two positions.
sSubString = Mid$(BigString, iStart, Len(BigString) – iEnd)
For instance, if your strings were as follows:
BigString: “This is a very long string.”Keyword_1: “is”Keyword_2: “long”
iStart would equal 6, and iEnd would equal 16. sSubString would equal “is a very “. InStr is a very efficient function for dealing with long strings, so I’d give it a try.

devx-admin

Share the Post: