2
votes

RegEx pour capturer une valeur d'attribut dans un élément HTML

J'ai un problème pour extraire du texte dans la balise html à l'aide de regex.

Je veux extraire le texte du code html suivant.

TEXTDATA

Le résultat:

<a href="http://google.com/" target="_self" title="TEXTDATA" class="encyclopedia">Google</a>

Je souhaite extraire uniquement le texte TEXTDATA

J'ai essayé mais je n'ai pas réussi.


3 commentaires

Dans quel langage regex ex python, js


Veuillez inclure le code que vous avez essayé, sans problème / problème spécifique pour résoudre la question sera probablement fermée.


Je veux gratter les données en utilisant le plugin automatique wordpress, à partir du code php


3 Réponses :


0
votes

Google

Remvoe Title et essayez


2 commentaires

Comment cela aidera-t-il à sélectionner / extraire le texte TEXTDATA ? En fait, il est complètement supprimé de votre réponse ...


add Name = "Google" else hint = "Google", Value = "Google"



0
votes

Utilisez cette expression régulière:

title=\"([^\"]*)\"

Voir: Regex


0 commentaires

0
votes

Ici, nous voulons faire glisser la chaîne jusqu'à une limite gauche, puis collecter les données souhaitées, puis continuer à glisser jusqu'à la fin de la chaîne, si nous voulons:

$re = '/<.+title="(.+?)"(.*)/m';
$str = '<a href="http://google.com/" target="_self" title="TEXTDATA" class="encyclopedia">Google</a>';
$subst = '$1';

$result = preg_replace($re, $subst, $str);

echo $result;

entrer l'image description ici

const regex = /<.+title="(.+?)"(.*)/gm;
const str = `<a href="http://google.com/" target="_self" title="TEXTDATA" class="encyclopedia">Google</a>`;
const subst = `$1`;

// The substituted value will be contained in the result variable
const result = str.replace(regex, subst);

console.log('Substitution result: ', result);

RegEx

Si cette expression n'était pas souhaitée, elle peut être modifiée ou changée dans regex101.com .

Circuit RegEx

jex.im permet également de visualiser les expressions.

 entrez la description de l'image ici

PHP

<.+title="(.+?)"(.*)


0 commentaires