扩展的正则序列中的(?)到底是什么意思?该如何处理

扩展的正则序列中的(?!...)到底是什么意思?
书中的解释是:   如果向前查找断言失败则返回真
一个用到的例子是:
把逗号放在一个整数的合理位置
$_   =   "12345678 ";
1   while   s/(\d)(\d\d\d)(?!\d)/$1,$2/;
print   "$_   \n ";     #   输出   12,345,678

请问这个正则表达式到底是如何运作的,我怎么也看不懂,求指教

------解决方案--------------------
http://www.regexlab.com/zh/regref.htm
这个里面有?!这样的。