Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Language: Visual Basic
Expertise: Beginner
Mar 21, 1997

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 text file. 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 Long
Dim iEnd as Long
Dim sSubString as string

iStart = 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 Pro
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap
Thanks for your registration, follow us on our social networks to keep up-to-date