Question: The statement below will load all images that do not begin with an underscore character...

```
if (!is_dir($file) && preg_match("/^[^_].*\.(bmp|jpeg|gif|png|jpg)$/i", $file)) 

```

I need to modify it so that it only loads images that DO BEGIN with an underscore.

Answer: 
Just remove the negation on the character set: `[^_]` becomes `_`:

```
if (!is_dir($file) && preg_match("/^_.*\.(bmp|jpeg|gif|png|jpg)$/i", $file)) 

```
Try [`glob()`](http://de.php.net/manual/en/function.glob.php) to match file pathnames against a pattern, e.g.

```
glob('_*.{jpg,jpeg,gif,png,bmp}', GLOB_BRACE);

```

to get all files starting with an underscore and ending in any of the extensions given in the curly braces.

Alternatively, have a look at [`fnmatch()`](http://de.php.net/manual/en/function.fnmatch.php) to check a filename against a pattern.

In addition, if you want to make sure the images are really images, consider [checking against the MimeType](https://stackoverflow.com/questions/2006632/php-how-can-i-check-if-a-file-is-mp3-or-image-file/2006664#2006664) instead of or in addition to the extension.