Trova il testo senza tag in un elemento div

Ho bisogno di accedere al testo Lac (s) 48.20 che è senza alcun tag all’interno del div, che è la ragione per cui non sono in grado di accedervi. Ho bisogno di trovare questo in un file PHP.Ho provato $ html-> find (‘div.priceDetail’) seguito da trim (strip_tags ($ result)) che mi ha dato 48.20 Lac (s) + testo non necessario. Dato che devo creare un file generico, non posso dipendere dall’esplosione e dall’implosione per un determinato caso fisso.

Total Price : 48.20 Lac(s) (Price per sq.ft. : Rs. 3,679) 4 %
Per sq.ft. price for this property is higher than the averageproperty price in this locality as per MagicBricks.com Price Trends.
To know more about this Click Here

Ecco una soluzione con DomDocument, probabilmente più robusta di Regex:

 $DOM = new DOMDocument; $DOM->loadHTML($str); //Get all the image tags $elem = $DOM->getElementsByTagName('img'); //Get the first Image $first = $elem->item(0); //Get the node after the image $txt= $first->nextSibling; //Get the text echo $txt->nodeValue; 

Ovviamente richiede che il testo sia sempre posizionato dopo la prima immagine nel div.

Fai quanto più lavoro ansible con un parser DOM e poi, quando ti lascia il tuo carico casuale di testo, tira fuori il bit che vuoi con questo RegEx:

 ([0-9]{1,5}?\.[0-9]{2} Lac\(s\)) 

Risultato

 48.20 Lac(s) 

(Cambia il 5 nel RegEx al numero di cifre che vuoi consentire prima del punto decimale)