Python Divide a string
题
I have a string like this:
<td casd2" aasdeft" class="satyle3">
<b><a asddidasd?ct=Peasds&fasdaao=Monsdar
&pID=19635"...
I need the 19635.
Someone can help me ?
解决方案
I would use regular expressions to make a more neat solution:
>>> import re
>>> s = '<td casd2" aasdeft" class="satyle3"><b><a asddidasd?ct=Peasds&fasdaao=Monsdar&pID=19635"...'
>>> match = re.search(".*pID=(\d+).*",s)
>>> if match:
... match.group(1)
...
'19635'
Nice and simple isn't it?
其他提示
With what little information given, this is how I'd approach it:
import re
someString = ... # your original string
m = re.search(r"pID=(\d+)", someString)
pid = m.group(1)
If you are parsing HTML/XML, it's best to use the right tool. re can get the job done quick and dirty; but will come back to bite you when you extend later (software that is not dead always evolves) or you need to handle other forms of representation of the same data.
Beautiful Soup in python provides good parsing routines -- it's worth going thru' the learning curve.
不隶属于 StackOverflow