Ich benutze Python regulären Ausdruck, um HTML-Datei zu analysieren, jetzt muss ich eine Zahl aus einem HTML-Tag extrahieren, kann die Zahl entweder Integer oder Gleitkommawert sein. Im Folgenden sind zwei Beispiele:HTML-Parsing mit Python regulären Ausdruck
integer Fall:
<span class='addr-bbs'>2 baths</span>
Gleitkomma-Fall:
<span class='addr-bbs'>3.5 baths</span>
Mein ursprünglicher Code ist:
bath = re.findall('<span class=\"addr_bbs\">' + '(.{1,3})' + 'baths{0,1}<', str(homedata))
Aber nach der Prüfung, es fehlt die ganze Gleitkomma-Fälle. Wie kann ich beide Fälle abdecken, um die Nummer korrekt zu extrahieren?
Dank
Verwenden Sie Regex nicht, um HTML zu analysieren, verwenden Sie einen HTML-Parser. –
Bitte analysiere HTML nicht mit Regex, es wird dich verletzen. Sie verwenden bereits Python, warum nicht BeautifulSoup verwenden? https: // www.crummy.com/software/BeautifulSoup/bs4/doc/ – 1sloc
Mögliches Duplikat von [RegEx-Übereinstimmungen mit offenen Tags außer XHTML-eigenen Tags] (http://stackoverflow.com/questions/1732348/regex-match-open-tags-except -xhtml-inclosed-tags) –