-
-
Notifications
You must be signed in to change notification settings - Fork 2.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
isMobilePhone - incorrect rule for pt-BR locale #1374
Comments
Thanks for the suggestion, could you open a PR? |
if its still available i will be working asap |
Hello my friends I'm having trouble sending to cell phones that the second number of cell 4, for example 11945555555, here in São Paulo / Brazil some phones are like this |
@lacort Agreed, I was about to publish this but I realised that some numbers in São Paulo might start with 9 and be followed by a 4 (and apparently 3 too), it seems that those are new numbers given by certain ISP companies (like Vivo and Nextel) in São Paulo state (but mainly in São Paulo city). I should have a look at this by the end of the day. |
If anybody wants to tackle this as a PR, I would be most appreciative as it is beyond my immediate knowledge. |
Opened a new PR, with changes I made. It should now support new phone numbers that start with 9 and be followed by 2, 3, 4 and 5 too. |
closed in #1407 |
Describe the bug
The regexp in use is incorrect for mobile phones in Brazil, and it also has a few bugs as mentioned below:
Bugs
Second regexp group is useless as first group is always used
The second group (
[6-9]{1}\d{3}\-?\d{4}
) is included in the first one (\d{4}\-?\d{4}
)There is an OR operator missing between the first and second group
The two digits that precedes the phone number can be wrapped around parentheses, just like the first 3 digits of the en-US phone number, also it's possible to have a space between the country code and area code, and between the area code and phone number
Examples of phone numbers
With country code and area code
Without country code, with area code in parentheses
Without country code, with 0 followed by area code
Without country code, without 0, with area code
Suggested RegExp
I'd suggest the usage of the following regexp as it fixes above issues.
/^((\+?55\ ?[1-9]{2}\ ?)|(0[1-9]{2}\ ?)|(\([1-9]{2}\)\ ?)|([1-9]{2}\ ?))((\d{4}\-?\d{4})|(9[6-9]{1}\d{3}\-?\d{4}))$/
The text was updated successfully, but these errors were encountered: