dcsimg
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

By submitting your information, you agree that devx.com may send you DevX offers via email, phone and text message, as well as email offers about other products and services that DevX believes may be of interest to you. DevX will process your information in accordance with the Quinstreet Privacy Policy.


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

WEBINAR:

On-Demand

Building the Right Environment to Support AI, Machine Learning and Deep Learning


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