preg_matchでのみ単一のアンダースコアを許可するにはどうすればよいですか?
以下で作成した正規表現は、二重のアンダースコアを取りますが、これは私が望んでいないことです...
if(!preg_match('/^[a-z0-9\s\_]+$/', $name))
{
$error = true;
echo '<error elementid="name" message="name - please use alpha-numbers and lowercaps only." />';
}
例えば、
hello world ok
hello_world ok
hello__world not ok
hello_world__again__ not ok
_hello_world_again_ not ok