2010-07-01 5 views
2

J'ai été chargé de proposer une routine qui proposera des noms de domaine alternatifs à enregistrer si le nom de domaine demandé original du client est déjà enregistré.Routines pour suggérer des alternatives

La première étape, je pense serait de fractionner le domaine demandé en bits afin que je puisse travailler sur des alternatives à essayer.

par ex. mybigredtruck.com serait cassé dans "mon", "grand", "rouge" & "camion"

Ensuite, j'aurais besoin d'un moyen de travailler sur des alternatives pour ceux-ci.

Est-ce que quelqu'un connaît des méthodes, des composants/services Web qui pourraient faire l'une de ces fonctions. Toutes les idées seront admirablement acceptées.

+3

http://stackoverflow.com/questions/1538589 http://stackoverflow.com/questions/195010 http://stackoverflow.com/questions/2004204 http://stackoverflow.com/ questions/1315373 http://stackoverflow.com/questions/1230373 http://stackoverflow.com/questions/1291734 –

Répondre

1

est ici un bon endroit pour commencer par un algorithme de correspondance:

  • Obtenir un dictionnaire de mots

  • supprimer les caractères non alphabétiques de la chaîne d'entrée

  • Retirez l'extension TLD à partir de
    entrée chaîne

  • En supposant que le texte d'entrée est orthographié correctement , at pour le faire correspondre avec une entrée de dictionnaire ; s'il ne correspond pas (dans le cas de mots concaténés non délimités), essayez un caractère moins dans une boucle jusqu'à ce qu'il corresponde. Stockez le match mais recherchez tous les autres autres matches. Faites de même pour le reste de la chaîne .

La correspondance correcte serait celui où toutes les sous-chaînes de la chaîne d'entrée entière est compensée, par exemple, wwww.soilofgarden.com = « sol de jardin » et non « si ?? de jardin »

0

La mise en œuvre la plus courante des algorithmes de suggestion que j'ai vu est de préfixer ou d'ajouter des mots pertinents. Pour les noms de domaine, le plus commun est de changer le domaine de premier niveau (.com, .net, .gov, etc.).

En ce qui concerne la séparation d'une chaîne sans séparateur par les mots anglais les plus probables, je pense que vous avez peut-être connu une période difficile.

A Google search for "mybigredtruck" ne suggère pas "mon gros camion rouge" comme une autre recherche. Pour moi, cela implique que l'algorithme est extrêmement complexe, s'il en existe un.

+2

-1 la division d'une chaîne sans espace en mots n'est pas si difficile –

+0

Je suis fortement d'accord avec Bobwise. Stick avec des chiffres ajoutés au nom, ou en changeant le suffixe. À moins que l'informatique avec le langage naturel et les dictionnaires ne soit un domaine d'expertise pour vous, alors n'envisagez même pas cette voie. En pensant en tant que gestionnaire de programmation, je dirais que vous êtes trop penser à celui-ci. Si votre responsable attend réellement la solution basée sur les mots, faites d'abord la version 30 minutes, cochez-la, puis expliquez que vous aurez besoin de 4 semaines supplémentaires pour prototyper la version complexe. – Detmar

+0

Je pensais à l'origine que je pourrais envoyer des requêtes ajax à google pour des suggestions de recherche et l'utiliser pour prédire les limites de mots, incrémenter la chaîne de requête 1 char à la fois jusqu'à ce que je corresponde à une partie de la chaîne demandée. Merci pour votre temps à répondre. –

Questions connexes