Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 21

Discussione: individuare un link

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    794

    individuare un link

    Salve ragazzi.
    E' possibile individuare all'interno di un tipo doi dati TESTO un link? Mi spiego meglio.
    Inserisco del testo all'interno della test area. Prima di memorizzarlo nel database, vorrei controllare se all'interno è presente un link e trasfromarlo il link stesso. Oppure se c'è un indirizzo di posta elettronica e convertirlo in tale...
    Grazie mille...

    SIAMO CAMPIONI DEL MONDO!!!!! VVoVe:

  2. #2
    Si può fare.

    Con un request.form("nome_campo"), dove nome_campo è quello della textarea nel form, recuperi il contenuto della textarea stessa.

    Ora considera che caratteristiche hanno, rispettivamente, l'url di un sito e un indirizzo di posta elettronica:

    - l'url di un sito web contiene di solito la sottostringa "www." (non sempre, purtroppo). Più caratteristiche riesci a definire, più sei certo di poter istruire lo script a riconoscere l'url in questione

    - un indirizzo email contiene un carattere "@", almeno un punto, e sarà costituito ALMENO da sette caratteri (fai una prova........)

    Ebbene: chiamiamo

    messaggio = request.form("nome_campo")
    la variabile in cui memorizzi il contenuto della textarea. Uno script per ottenere quello che chiedi può essere:

    <%
    messaggio = request.form("testo") 'la mia textarea l'ho chiamata "testo"
    messaggio = replace(messaggio, "'", "''")

    parole = split(messaggio, " ")

    messaggio_risultante = ""

    for each elemento in parole
    if instr(elemento, "www.") > 0 then
    elemento = "<a href=http://"&elemento&">"&elemento&"</a>"
    end if

    if ((instr(elemento, "@") > 0) and (instr(elemento, ".") > 0) and (len(elemento) > 7)) then
    elemento = ""&elemento&""
    end if

    messaggio_risultante = messaggio_risultante &" "&elemento

    next



    response.write(messaggio_risultante)

    %>
    Usa questo suggerimento come punto di partenza, certamente migliorabile. Per esempio, un url può essere scritto anche in modi diversi che semplicemente "www.uncertosito.ext", e lo script dovrebbe prevedere e gestire questa condizione...............

    Buon divertimento.

    E' nato www.lombardiamotori.it

    www.universocase.it: il primo portale italiano di annunci immobiliari gratuiti e autogestiti!

  3. #3
    se fai una ricerca per regexp (regular expression) potresti trovare esempi piu performanti...cmq non è uno script "banale" quello che chiedi quindi potresti trovare diverse soluzioni

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    codice:
    <%
    Function Link_URL(stringa)
    	Dim objRegExp, strTemp
    	Set objRegExp = New RegExp
    	objRegExp.IgnoreCase = True                   
    	objRegExp.Global = True                 
    	'objRegExp.Pattern = "(\b(www\.|http\://)\S+\b)"
    	objRegExp.Pattern = "(\b(www\.|http\://)\S+\b}?)"
    	strTemp = objRegExp.replace(stringa, "CLICCA QUI")
    	Link_URL = Replace(strTemp,"http://http://","http://")
    	Set objRegExp = Nothing
    End Function
    
    Function Link_email(stringa)
    	Dim objRegExp
    	Set objRegExp = New RegExp 
    	objRegExp.Global = True 
    	objRegExp.IgnoreCase = True
    	'objRegExp.Pattern =	"(\b[a-z._-]+@\S+\.[a-z]{2,3}\b)"
    	objRegExp.Pattern = "([\w\-\.]+@([\w\-]+\.)+[a-z]{2,4})"
    	Link_email = objRegExp.replace(stringa, "$1")
    	Set objRegExp = Nothing
    End Function
    %>
    Non sporcare il db con testo inutile.
    Applica le funzioni nel momento che visualizzi il contenuto dei campi.

    Roby

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    794
    ho usato il primo script pervenutomi e funziona perfettamente anche se ci sarebbero dei controlli da fare su www e su http://.
    Mi ispira molto l'ultimo script. Però prima di usarlo, posso capire il suo funzionamento?
    Grazie mille...

  6. #6
    Originariamente inviato da ylio82
    ho usato il primo script pervenutomi e funziona perfettamente anche se ci sarebbero dei controlli da fare su www e su http://.
    Mi ispira molto l'ultimo script. Però prima di usarlo, posso capire il suo funzionamento?
    Grazie mille...

    è una regexp...se non sbaglio il pattern dice:

    la parola deve essere preceduta da uno spazio (\b), seguita da "www." o "http://") seguita da caratteri non vuoti e seguiti da uno spazio vuoto...il punto interrogativo non ho capito che vuol dire

    http://msdn2.microsoft.com/en-us/library/ae5bf541.aspx

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    794
    Grazie per la delucidazione...
    Lo provo e ti faccio sapere su questo post...
    Ciao ciao..

  8. #8
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    794
    Ho provato l'ultimo codice in questo modo.

    messaggio = "mio testo"
    messaggio = Link_URL(messaggio)
    messaggio = Link_email(messaggio)

    response.write(messaggio)

    ma non mi dà niente, il testo risulta vuoto..
    Ho sbagliato in quialcoasa?

  9. #9
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Dov'è il link nella tua stringa?

    roby

  10. #10
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    794
    in mezzo o alla fine...
    Dipende dal messaggio.
    io recupero il messaggio dal database...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.