Newsgroup: it.comp.lang.javascript
Titolo: Problema D'Amore con le rehexp

Ciao ragazzi
ho un problemino d'Amore con le regexp
Infatti per validare i dati uso la regexp
[A-Za-z0-9] che però non mi lascia passare il cognome D'Amore e molti altri 
simili non so se escaparlo o modificare la regexp o entrambi
Voi cosa ne dite?
Grazie

 Voi cosa ne dite?
Metti l'apostrofo ['A-Za-z0-9] e la gente ti amerà.

 altri 
scusa la domanda sciocca... ma che razza di cognomi hanno i numeri!?
-- 
By ZeD

Ti ringrazio molto e te ne chiedo iin'altra
Usando le regexp come faccio ad intercettare la parola "delete" in ogni modo 
sia scritta (DELETE delete Delete dELETE ecc....) ovvero CASE INSENSITIVE?
Grzie


I cognomi non saprei ma i nick si

 sia scritta (DELETE delete Delete dELETE ecc....) ovvero CASE INSENSITIVE?
Non sono mica un mago di regexp ho risposto solo per il subject :-p
Al volo direi [dD][eE][lL][eE][tT][eE] ma magari c'è un modo più 
appropriato.

 altri simili non so se escaparlo o modificare la regexp o entrambi
Questa basta ed avanza:
 [\w ']+
matcha anche cognomi tipo "De Amicis".
-- 
    * b *       Il tuo post è privo del MIME, attivalo in OE.
  *   y   *       Per impostare correttamente Outlook Express
*   Piero   *       e OE-QuoteFix, puoi consultare Wikipedia:
http://wiki.news.nic.it/GuidaNr_2fOutlookExpress?action=recall&date=1172714805
 

"Paolo" [by Microsoft Outlook Express 6.00.2900.5512] on Sat, 27 Sep



Con questa:
/\bdelete\b/gi,""
-- 
    * b *       Il tuo post č privo del MIME, attivalo in OE.


  [\w ']+
Ed è bene sottolineare "l'avanza". :)
Escludendo il discorso del +, rispetto al gruppo precedente, contempla
anche l'underscore. Dato che l'OP ha detto che prevede l'uso dei nick,
direi che la cosa potrebbe anche essere utile, ma è bene sottolinearlo
visto che nel gruppo precedente tale carattere era escluso (e quindi i
due gruppi non sono equivalenti).
-- 
~ Non sono disordinato. Sono solo un massimizzatore di entropia.

 /\bdelete\b/gi,""
T'č rimasta roba "agganciata", la regexp č solo:
	/\bdelete\b/i
E in base poi a quale scopo gli serve tale match, puň aver bisogno del
flag "g" come no.
-- 
~ Confondi il mondo, sorridi tutti i lunedě!

 sia scritta (DELETE delete Delete dELETE ecc....) ovvero CASE INSENSITIVE?
Il "case insensitive" lo ottieni usando il flag "i" nelle regular
expression. Ti consiglio una lettura della reference:
http://developer.mozilla.org/En/Core_JavaScript_1.5_Reference/Global_Objects/RegExp
-- 
~ Non esiste la certezza: è solo l'illusione di una realtà soggettiva.
(Fabio Mornati)

 due gruppi non sono equivalenti).
Post essenziali per lasciar spazio a chi vuol puntualizzare. :-)
-- 
    * b *
  *   y   *
*   Piero   *
[ /errare humanum est/ ] 

 flag "g" come no.
Poiché un global in più non fa danni, Melius abundare quan deficere. ;-)
-- 
    * b *
  *   y   *
*   Piero   *
[ /deus ex machina/ ] 

 Melius abundare quan deficere. ;-)
Non mi trovi per nulla d'accordo, in informatica ho riscontrato più
volte che è vero il contrario:
"Il semble que la perfection soit atteinte non quand il n'ya plus 
rien à ajouter, mais quand il n'ya plus rien à retrancher"
(A. de Saint-Exupéry) 
:)
-- 
~ "Ciò che il cuore conosce oggi, la testa comprenderà domani"
(Seneca)

 Post essenziali per lasciar spazio a chi vuol puntualizzare. :-)
Dato che si trattano di puntualizzazioni non affatto irrilevanti,
IMVHO dovrebbero essere scritte da chi risponde. :)
-- 
~ Always remember you're unique, just like everyone else.

 :)
Assolutamente d'accordo! Quando scrivo una regexp sapendo _esattamente_ 
ciò che deve fare cerco di eliminare tutto il superfluo, si trattase 
anche di un solo font. :-)
Tuttavia... il /melius abundare quan deficere/, attiene a quanto ho 
scritto prima.
-- 
    * b *
  *   y   *
*   Piero   *
[ /do ut des/ ] 

 anche di un solo font. :-)
A maggior ragione quando non si sa esattamente cosa deve fare, si tende
a evitare di inserire maggiore complessità, in quanto aumenterebbero di
certo anche i problemi riscontrabili (soprattutto se noti).
Il punto è, se devi scrivere un solo codice, allora è bene eliminare il
superfluo. Se vuoi "abbondare" come dici tu, va benissimo, ma se lo fai
nelle informazioni fornite all'utente: in tal caso, nel dubbio è sempre
bene fornire più informazioni possibili all'OP e son d'accordo. Questo,
lo si può riscontrare spesso nei miei "logorroici" post. :)
Insomma, nel caso specifico avrei optato o per inserire la regexp pura,
e basta, oppure quella aggiungendo anche la versione con il flag global
nel caso avesse voluto fare un replace di un certo tipo, avvisandolo in
ogni caso dei pro e dei contro, e soprattutto degli effetti collaterali
che avrebbe potuto ottenere.
Oppure, più semplicemente, chiedendo maggiori informazioni in merito.
Ma questa è effettivamente la mia opinione. :) Che un global in più sia
dannoso invece no. :)
-- 
"Se c'è qualcosa di più importante del mio ego su questa nave,
la voglio catturata e fucilata."