Visualizzazione dei risultati da 1 a 9 su 9

Discussione: RegExp & replace

  1. #1

    RegExp & replace

    Salve devo implementare un replace lato server sul contenuto della pagina html che devo mandare fuori da un asp.

    In js faccio così (ovvero usavo un escamotage facendo processare la pagina una volta caricata nel browser da un parser scritto in js) :

    codice:
    str = str.replace(/[^\<](parola)/ig, "parola");
    Mentre in ASP voglio fare la stessa cosa ma non mi funziona :

    codice:
    objRegExp = Server.CreateObject("VBScript.RegExp")
    objRegExp.IgnoreCase = True
    objRegExp.Global = True
    objRegExp.Pattern = "/[^\<](parola)/ig"
    Testo = objRegExp.Replace(Testo, "parola")
    Praticamente devo mettere in grassetto la parola cercata, solo nel testo ma non dento i tag html.

    In js il replace con RegSxp va, ma in ASP no.
    Sbaglio qualche cosa nella RegExp?
    Scusatemi in anticipo per gli ORRORI di ortografica, ma sono analfabeta
    Electronic parts catalog
    Gestione cataloghi ricambio IPC
    Documentazione tecnica & manuali

  2. #2
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    Ciao CiodoF,

    objRegExp è un oggetto quindi devi usare il set
    il carattere / indica l'inizio e la fine della re in javascript
    g e i in vbscript sono proprietà dell'oggetto (che trallaltro tu setti correttamente)
    quindi
    codice:
    set objRegExp = Server.CreateObject("VBScript.RegExp")
    objRegExp.IgnoreCase = True
    objRegExp.Global = True
    objRegExp.Pattern = "[^\<](parola)"

  3. #3
    Ok, grazie ora va ... le ho sempre usate in js, ma mai in asp.
    Però ho un problema :
    Ivo voglio che sostituisca e metta in grasstto la mia parola quando non è contenuta dentro un tag ahtml, ma a volte me la becca e sostiuisce :
    Esempio :
    Vorrei :
    ....
    info sulla parola inserita
    ....

    Diventasse :
    ....
    info sulla parola inserita
    ....

    Ma ora diventa :
    ....
    info sulla parola inserita
    ....

    Sai eventualmente consigliarmi? (cioè in js non ho problemi, ma qui in asp si)
    Thanks e
    Scusatemi in anticipo per gli ORRORI di ortografica, ma sono analfabeta
    Electronic parts catalog
    Gestione cataloghi ricambio IPC
    Documentazione tecnica & manuali

  4. #4
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    io farei così il pattern della regular expression
    codice:
    objRegExp.Pattern = "(<[^>]+>)?(parola)"
    e poi così il replace
    codice:
    Testo = objRegExp.Replace(Testo, "$1$2")

  5. #5
    Problema ancora, mi sca__a nelle parole dentro gli href :

    info sulla parola inserita.
    Scusatemi in anticipo per gli ORRORI di ortografica, ma sono analfabeta
    Electronic parts catalog
    Gestione cataloghi ricambio IPC
    Documentazione tecnica & manuali

  6. #6
    Aspettate forse faccio io casino ....



    .......a moment please torno subito ...
    Scusatemi in anticipo per gli ORRORI di ortografica, ma sono analfabeta
    Electronic parts catalog
    Gestione cataloghi ricambio IPC
    Documentazione tecnica & manuali

  7. #7
    No, confermo sca__a.
    Scusatemi in anticipo per gli ORRORI di ortografica, ma sono analfabeta
    Electronic parts catalog
    Gestione cataloghi ricambio IPC
    Documentazione tecnica & manuali

  8. #8
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    sca__a vuol dire scazza?

    hai ragione...
    prova così
    codice:
    objRegExp.Pattern = "(<[^>]+>[^<]*)(parola)"
    e famme sape'

  9. #9
    Buonanima ... grazie .... ora va.....

    Scusatemi in anticipo per gli ORRORI di ortografica, ma sono analfabeta
    Electronic parts catalog
    Gestione cataloghi ricambio IPC
    Documentazione tecnica & manuali

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.