Snažím sa používať HTML formulár a javascript (spomínam to, pretože niektoré pokročilé funkcie spracovania regexu nie sú k dispozícii, keď sa používa na javascript) na doplnenie nasledujúceho:
vložte do formulára nejaký text a pomocou regulárneho výrazu sa naň pozriete a zachytíte určité jeho časti, ktoré sa majú použiť ako premenné ...
t. j. text:
"abcde email: asdf@gfds.com email: fake@mail.net sdfsdaf ..."
... teraz je môj problém taký, že nemôžem vymyslieť elegantný spôsob zachytenia oboch e-mailov, napríklad premenných e1 a e2.
Regex, ktorý mám zatiaľ, je niečo také: / email: (bw + b) / g, ale z nejakého dôvodu to nevracia späť 2 zápasy ... iba vracia asdf@gfds.com> <
sugestions?
odpovede:
3 pre odpoveď č. 1Môžeš použiť RegExp.exec () opakovane aplikovať regulárny reťazec na reťazec a vždy vrátiť novú zhodu:
var entry = "[...]"; //Whatever your data entry is
var regex = /email: (bw+b)/g
var emails = []
while ((match = regex.exec(entry))) {
emails[emails.length] = match[1];
}
Všetky e-maily som uložil do poľa (tak, abyurobiť túto prácu ďaleko svojvoľným spôsobom). Vyzerá to, že by mohol byť váš regex tiež trochu mimo; Ak si chcete zachytiť celý e-mail, musíte ho zmeniť.