Regular expressionliness is next to
godliness.
# This next line will set its_there to true if, in the html
for the page, it sees
# the string "customerID=" followed by any
seventeen characters, and
# (courtesy of the parens) will set $1 to whatever those
seventeen
# characters are.
its_there = ie.html =~
/customerID=(.{17})/
# and if its_there is true, myvariable will get the value
assigned to it
if(its_there)
myvariable = $1
end
There may be a more elegant way to do it (say, by getting
the inner_text of the link and parsing that), but the basic principle is that
regular expressions are your friends.
---Michael B.
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Paul Carvalho
Sent: February 9, 2006 4:14 PM
To: wtr-general@rubyforge.org
Subject: [Wtr-general] How do you find a specific string in an HTML page?
Our Dot-Net app assigns Unique ID's to various objects within the system. For example, if you create a new Customer in an Order-Taking system, the new Customer is assigned a unique ID (let's call it "customerID"). When I look at the HTML page, I see that UID in various places. For example:
(a) within a "div" tag (within a custom attribute unrecognised by Watir)
(b) within an "a href" link (part of the URL - e.g. "http://www.../../ShowCustomer.aspx?mode=edit&customerID=1234asdf-5678hjlk")
I know that I can use the contains_text() to look for text on the page. I can also use ie.frame("frameName").html.to_s to capture the contents of the frame. So how can I tell Watir to find the "customerID=" phrase and then capture the next [fixed-number] set of characters into a string variable?
Thanks in advance.
Paul.
_______________________________________________ Wtr-general mailing list Wtr-general@rubyforge.org http://rubyforge.org/mailman/listinfo/wtr-general