2012-09-07 10 views
6

Ho questa espressione regolare che corrisponde correttamente tutto quello che serve (tutti i non gli indirizzi di posta elettronica all'interno di un link):Regexp lookbehind javascript

/((?<!mailto:|=|[a-zA-Z0-9._%+-])[a-zA-Z0-9._%+-][email protected][a-zA-Z0-9.‌​-]+\.[a-zA-Z]{2,64}(?![a-zA-Z]|<\/[aA]>))/ 

Purtroppo, dal momento che javascript non supporta lookbehind, non funziona sulla mia web app. C'è una soluzione per questo?

risposta

3

Per definizione, è necessario guardare dietro per sapere che non vi è alcun tag di collegamento iniziale <a> prima dell'indirizzo email.

Si può provare:

  1. partita ogni indirizzo di posta elettronica, e quindi verificare che l'indirizzo di posta elettronica non è all'interno di un collegamento a livello di codice

o

  1. uso AJAX inviare i dati al tuo server e fai in modo che il tuo server faccia il Regex.
Problemi correlati