using the string functions (ex. find()) on a multi-symbol string

K

korean_dave

How can i use the find() function on a string that is composed of tons
of symbols that cause errors...

THis is my string:

find("<html><head><meta name="qrichtext" content="1" /><style
type="text/css">p, li { white-space: pre-wrap; }</style></head><body
style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:
400; font-style:normal; text-decoration:none;"><p style=" margin-top:
0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-
indent:0; text-indent:0px; font-size:8pt;"><span style=" font-size:
10pt; color:green;">Connected!</span></p></body></html>","margin")

The tough part about this is that the string is dynamically produced.
So I can't manually go into the string and eliminate the quote-marks
or to "literal-character" them.
 
J

John Machin

How can i use the find() function on a string that is composed of tons
of symbols that cause errors...

THis is my string:

find("<html><head><meta name="qrichtext" content="1" /><style
type="text/css">p, li { white-space: pre-wrap; }</style></head><body
style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:
400; font-style:normal; text-decoration:none;"><p style=" margin-top:
0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-
indent:0; text-indent:0px; font-size:8pt;"><span style=" font-size:
10pt; color:green;">Connected!</span></p></body></html>","margin")

The tough part about this is that the string is dynamically produced.
So I can't manually go into the string and eliminate the quote-marks
or to "literal-character" them.

What are you trying to find? What error(s) do you get?
 
J

John Machin

How can i use the find() function on a string that is composed of tons
of symbols that cause errors...

THis is my string:

find("<html><head><meta name="qrichtext" content="1" /><style
type="text/css">p, li { white-space: pre-wrap; }</style></head><body
style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:
400; font-style:normal; text-decoration:none;"><p style=" margin-top:
0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-
indent:0; text-indent:0px; font-size:8pt;"><span style=" font-size:
10pt; color:green;">Connected!</span></p></body></html>","margin")

The tough part about this is that the string is dynamically produced.
So I can't manually go into the string and eliminate the quote-marks
or to "literal-character" them.

If as you say the string is dynamically created, your script should
have a variable name for it e.g. dynstr so all you have to do is:
dynstr.find("margin")
Note: you should be using str methods (see http://docs.python.org/lib/string-methods.html);
almost all functionality in the string module is now deprecated and
redirected (slowly) e.g.
def find(s, t):
return s.find(t)

If you really want/need to put such a monster string containing both '
and " as a literal in your script, you can use triple quotes (""" or
''').

I.e.
find("""<html><head><meta name="qrichtext" ... </span></p></body></
html>""", "margin")

See http://docs.python.org/tut/node5.html#SECTION005120000000000000000

HTH,
John
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,754
Messages
2,569,528
Members
45,000
Latest member
MurrayKeync

Latest Threads

Top