Hi,
boolean reEmail()
but you are using as a String in validate("[email protected]"
<[email protected]>,reEmail());
then
regexp in the validate method is 're' when used but 'regexp' as a parameter.
On Thu Nov 20 2014 at 8:18:32 AM Alex Luya <[email protected]> wrote:
> Hello:
> Similar question has been asked here: How to pass a regular
> expression as a function parameter
> <http://stackoverflow.com/questions/11143702/how-to-pass-a-regular-expression-as-a-function-parameter>,
> but I can't get it work by JSNI.
>
> This is the string of the regular expression that will be used to test
> email:
>
>
> "^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$"
>
> <))@((%5C[[0-9]%7B1,3%7D%5C.[0-9]%7B1,3%7D%5C.[0-9]%7B1,3%7D%5C.[0-9]%7B1,3%7D%5C])%7C(([a-zA-Z%5C-0-9]+%5C.)+[a-zA-Z]%7B2,%7D))$>
>
> and if putting it to firebug execute like this:
>
>
> /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$"
>
> <))@((%5C[[0-9]%7B1,3%7D%5C.[0-9]%7B1,3%7D%5C.[0-9]%7B1,3%7D%5C.[0-9]%7B1,3%7D%5C])%7C(([a-zA-Z%5C-0-9]+%5C.)+[a-zA-Z]%7B2,%7D))$>/.test("[email protected]"
> <[email protected]>)
>
> it will give what I want,but If wrapping it to a JSNI method:
>
> private native boolean reEmail()/-*{
> return
> "^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$"
>
> <))@((%5C[[0-9]%7B1,3%7D%5C.[0-9]%7B1,3%7D%5C.[0-9]%7B1,3%7D%5C.[0-9]%7B1,3%7D%5C])%7C(([a-zA-Z%5C-0-9]+%5C.)+[a-zA-Z]%7B2,%7D))$>;
> }-*/;
>
> then passing it to the function:
>
> private native boolean validate(String value, String regexp)/-*{
> //escape special characters
> var re=regexp.replace(/([-()\[\]{}+?*.$\^|,:#<!\\])/g,
> '\\$1').replace(/\x08/g, '\\x08');
> return new RegExp(re,'g').test(value)
> }-*/;
>
> like this:
>
> validate("[email protected]" <[email protected]>,reEmail());
>
> It will give me false.Please tell what mistakes I have made,thanks.
>
> --
> You received this message because you are subscribed to the Google Groups
> "Google Web Toolkit" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/google-web-toolkit.
> For more options, visit https://groups.google.com/d/optout.
>
--
You received this message because you are subscribed to the Google Groups
"Google Web Toolkit" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/google-web-toolkit.
For more options, visit https://groups.google.com/d/optout.