Jump to content

[SOLVED] verifying binary, octal, decimal, or hexidecimal


smerny

Recommended Posts

Since this in the regex forum, I assume that's what you're looking for.  Have you tried anything already: how familiar with regular expressions are you, do you know how to match specific characters?

 

Offtopic

The is_numeric() function would accept a wider range of values than just decimal (0-9). For example, exponential parts are allowed for decimal numbers (e.g. "123.45e6" is considered numeric) and it will allow octal and hexadecimal numbers as well (e.g. 0123 octal, 83 decimal and 0x53 hexadecimal are all the same number).

is_numeric does what i need of for a decimal, decimals can be 101 along with binary, so i cant say that 101 is not decimal...

 

i assumed regex would be what i need to verify something is a valid octal, hexi, or binary.... i do not understand regex statements

Technically every number on a computer is stored in binary, so you won't be able to do it mathematically.

 

When you look at it as a string though, you can do something like:

 

if(preg_match('/^[0-1]+(?:\.[0-1]+)?$/', $number)) {

    //binary

}

 

The patterns for base 8:

 

/^[0-7]+(?:\.[0-7]+)?$/

 

 

Hex is a little more complicated since it has letters too:

 

/^[0-9|A-F]+(?:\.[0-9|A-F]+)?$/

 

thanks

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.