2009-11-05 5 views
0

je dois extraire une adresse d'une chaîneExtrait Société Adresse d'une chaîne

$string ="some text 9 th pizza tower 78 main Chennai 600001. and other information may be phone number etc"; 

De $string Je veux extraire seulement « 9 ème tour de la pizza 78 principale Chennai 600001 »

Ce format d'adresse est pas constante, il peut être dans les deux sens différents est une variable de chaîne est un autre comme celui-ci

$string1= "some text 9 th pizza tower main Chennai 600001. and other information may be phone number etc"; 

de là, je dois extraire « 9 e pi zza tower main Chennai 600001 "

Répondre

1

Je ne pense pas que ce soit possible ... extraire le texte d'un fichier en texte brut, c'est comme demander un arbre si vous êtes dans les bois," Lequel? ".

Si le fichier est toujours dans le même format, comme:

Company Name 73 
1st Cross Street, Hotel Chennai 
-600000 
someadditionalstuff 

Ensuite, vous avez un changement, ou si elle est toujours séparé par un caractère spécial (,, etc..). S'il est toujours le même format (celui que vous avez montré plus haut), alors quelque chose comme ça pourrait fonctionner:

([a-zA-Z0-9 ]*),([a-zA-Z0-9 ]*) XXX ([a-zA-Z0-9 ]*) (-[0-9]{6}) 

Groupe 1: Nom de la société Groupe 2: Adresse Groupe 3: Ville Groupe 4: Zip- Code

Bobby

+0

Merci mayy adresse VARY je veux seulement 73 1st Street Cross, Hôtel Chennai -600000 (sans spécification caracté pas prblem), par exemple, dans certains moments comme celui-ci portent sur 73 route principale chennai 600000 . – Naresh

+0

avoir l'adresse dans varible $ string = "Nom de l'entreprise 73 1st Cross Street, Hôtel Chennai -600000 et informations supplémentaires "; – Naresh

+0

Est-ce que le 73 est une pièce fixe? – Bobby

0

Désolé, ce n'est pas possible. Cela peut fonctionner pour un site Web mais pas pour d'autres, car il n'y a pas de format standard pour l'affichage d'une adresse d'entreprise (ou d'une adresse) sur une page Web.

0

Pas une question facile et il n'y a pas un code AI magique qui peut comprendre. Vous devez faire une supposition, et regarder beaucoup de données pour savoir si elles sont bonnes. Pour commencer - si vous supposez, chaque adresse se termine par le code postal, et vous pouvez rechercher la chaîne pour 5 (ou 6) chiffres et la couper après cela.

Pour trouver le début de l'adresse est au-delà de mes compétences. peut-être à la recherche du premier numéro.

Vous devez vérifier beaucoup d'exemples pour déterminer quel serait le meilleur patten correspondant à la plupart d'entre eux.

+0

Et - l'autre solution - faites en sorte que votre utilisateur entre l'adresse dans un champ séparé et gagnez beaucoup de temps. – Dani

+0

En fait je reçois cette page web en html et puis j'ai enlevé toutes les balises (html, script, style) enfin je l'ai en string – Naresh

0

Oui, c'est possible en utilisant Google Natural Language Processing qui est payante ou vous pouvez ouvrir un traitement en langage naturel qui est ouvert. Mais pour la PNL ouverte, il n'y a pas de meilleure documentation disponible. mieux se référer à partir de l'adresse suivante: https://opennlp.apache.org/