Reputation: 13
i'm trying to find an expression that matches a phone number in the format of (0[2,3,6,7,8,or 9]) XXXXXXXX
where X is a digit, the space must be matched and so must the parentheses
My current expression is:
/\b\(0[236789]\)\s(\d){8}\b/g
but it's not picking up any test numbers such as
(02) 12345678
I know regex phone number questions get spammed on SO. I have been reading through all the ones I can find which is how I've made it to this point but I can't for the life of me figure this out.
Upvotes: 1
Views: 249
Reputation: 3
Well, this is the best I can come up with.
/^[+]?(1\-|1\s|1|\d{3}\-|\d{3}\s|\d{2}\-|\d{2}\s|)?((\(\d{3}\))|\d{3})(\-|\s)?(\d{3})
(\-|\s)?(\d{4})$/g
This should support all combinations like
and so on.
Upvotes: 0
Reputation: 10434
Just remove the \b on either end, and it should work
/\(0[236789]\)\s(\d){8}/g
This will match multiple phone numbers, not sure if that is what you want. If you want to make sure the entire string from start to finish is the full phone number, you can do this
/^\(0[236789]\)\s(\d){8}$/
This will match (02) 12345678, and won't work if there are any characters around the string.
Upvotes: 1