J'ai la chaîne suivante:
$lat = preg_match_all('#lat":"(.*?)","lng#', $html, $matches);
$lat = matches[1];
3 Réponses :
Cette expression extraire probablement nos données de latitude et de longitude souhaitées dans ce groupe de capture (. +?) code>, car il supprime également les espaces indésirables: 45.491834
-73.606953
Bonjour, merci pour votre aide. Et si je n'ai besoin que de seulement le lat code> dois-je utiliser le foreach code>?
Si vous n'avez besoin que d'un et que vous devez utiliser regex, utilisez preg_match code> et supprimer "lng" code> alternance du motif de regex.
sortie: p> json_decode code> est beaucoup plus fiable que la regex. Ajouter des accolades et une valeur pour l'élément manquant "adresse" code> et vous pouvez indexer directement dans le résultat:
Pourquoi créer une nouvelle propriété root code> pendant le décodage puis y accéder? alors que vous pouvez décoder directement?
Merci de votre aide. Cela fonctionne mais comme j'explique dans les commentaires, mon $ HTML code> n'est qu'une version lumineuse du résultat d'un fichier fichier_get_contents () code>.
Valeurs dans le groupe 1 et groupe 2 P> https: // regex101.com/r/jdwl84/1 p> code PHP p> "lat": "\ s * ([^"] *? \ s * ")," GNL ":" \ s * ([^ "] *? \ k ( lat, long ) = ( 45.491834, -73.606953 )
( lat, long ) = ( 44.491834, -72.606953 )
( lat, long ) = ( 43.491834, -71.606953 )
Dois-je l'intégrer comme ceci: preg_match_all ('"lat": "\ s * ([^"] *? \ S * ")," GNL ":" \ s * ([^ "] s *) "\ k ', $ html, $ letlng); echo 'lat est'. $ Latlng [0]; code>?
@Popo - Vous correspondez à une paire, une coordonnée. Faites-le cependant que vous voulez. [[LAT, LONG], [LAT, LONG] ,] CODE>
Donc, comme ceci: echo $ letlng [lat, long] code>?
@popol - ouais, comme echo "(lat, long) = (". $ $ Letlng [$ i] [1]. "$ i] [2].") \ n "; code>
@popol - juste un avertissement pour ya. Si vous ne correspondez pas aux paires, une (ce n'est pas un si) et vous n'aurez pas de coordonnées viables.
... Cela ressemble à une chaîne JSON. Pourquoi avez-vous besoin de regex pour cela?
String JSON partielle / tronquée. S'il est possible de conserver la structure complète, avec
{} code>, puis analysant ce serait idéal comme dit Dharman. En outre, le titre de la question me rappelle fortement l'exemple de ce méta-post sur le problème XY .@Dharman, mon
$ HTML code> n'est qu'une version lumineuse du résultat d'unfichier_get_contents () code>.Dans quel fichier lisez-vous? Qu'est-ce que l'intérieur du fichier? Comment avez-vous eu une partie mal formée de ce fichier dans votre variable?
Si le contenu complet est une ressource JSON, alors - Stackoverflow.com/Questtions/29308898/... ou pour un fichier - stackoverflow.com/questions/4343596/...