shadowline
Metacharacters << Character Classes >> Matching/Replacing
Character classes are a defined set of characters. PHP holds some pre-defined classes for expressions :

[[:alpha:]]any letter
[[:digit:]]any digit
[[:alnum:]]any letter or digit
[[:space:]]any white space
[[:upper:]]any upper case letter
[[:lower:]]any lower case letter
[[:punct:]]any punctuation mark

Classes are created by putting a set of characters within the [square] brackets. Searching for a vowel may be done by using [aeiou] for example. The search will take each letter and do a search for it in the specified area.

Using a dash inside a class is a shortcut to specify "between". Using [a-f] will do a search for any lowercase letter between a to f.

Combinations can also be entered in classes. Using [a-zA-Z] will do a search for any lowercase or uppercase letter. This would also create the same result as using the [[:alpha:]] class in this example.

The ^ symbol has a different effect inside the square brackets. It will do a search that does not include the pattern specified. Using [^z] searches for any character other than lower case z.

Using this new information, you can revise the email address checker script like so...
<?php
$value1 = "here@there.com";
$value2 = "here@there.ca";
$value3 = "here@therecom";
$value4 = "blah@noplace.yahoo";
$value5 = "cool@site.n";

$search_pattern = "^([0-9a-z]+)([-._0-9a-z]+)@([-._0-9a-z]+)(\.[a-z]{2,3}$)";

$result1 = eregi($search_pattern,$value1);
$result2 = eregi($search_pattern,$value2);
$result3 = eregi($search_pattern,$value3);
$result4 = eregi($search_pattern,$value4);
$result5 = eregi($search_pattern,$value5);

if ($result1) {echo "one is true. ";} else {echo "one is false. ";}
if ($result2) {echo "two is true. ";} else {echo "two is false. ";}
if ($result3) {echo "three is true. ";} else {echo "three is false. ";}
if ($result4) {echo "four is true. ";} else {echo "four is false. ";}
if ($result5) {echo "five is true. ";} else {echo "five is false. ";}
?>

Results :

Fatal error: Uncaught Error: Call to undefined function eregi() in /misc/40/000/085/738/8/user/web/htmlite.com/php034.php:68 Stack trace: #0 {main} thrown in /misc/40/000/085/738/8/user/web/htmlite.com/php034.php on line 68