由以上《左传》的内容可以看出,赵氏即使遭到晋景公讨伐,但没有隐藏孤儿的事,赵武一直在母亲庄姬的保护下住在景公的宫中,后来承继赵氏的封邑。但在《史记》中赵武成了赵氏孤儿的主角,有一段十分复杂的情节:
晋景公三年(公元前597年),赵朔娶晋成公的女儿为夫人。赵朔为晋国统帅下军援救郑国,跟楚庄王在黄河边交战。
晋景公三年(公元前597年),大夫屠岸贾图谋诛灭赵氏。当初,赵盾在世时,曾梦见叔带(赵氏的祖先,公元前770年左右,由周地来到晋国,服侍晋文侯,开始在晋国建立赵氏世家)抱着他的腰哭泣,很悲哀;一会儿又大笑,一边拍手一边唱歌。赵盾占卜这个梦,龟甲上灼的裂纹中断可是后面又呈现佳兆。赵的史官援看了兆纹说:“这个梦很凶,不是应在您本人身上,而是应在您儿子身上,但也是由于您的过错。到您的孙子,赵氏宗族将更加衰微。”
屠岸贾这个人,开头得到灵公的宠爱,到景公时,屠岸贾就当了司寇,将要发难,就追究杀害灵公的罪犯,赵盾受牵连。他告诉三军的将领说:“赵盾虽然不知情,还是罪魁祸首。作为臣子谋杀国君,子孙仍然在朝作官,这怎么能惩治罪犯?必须诛灭赵氏。”韩厥说:“灵公被贼臣杀害,赵盾在都城外,我们已故的国君认为他无罪,所以不加惩治。现在诸位要杀他的后代,这不是先君的意思而是现在胡乱诛杀,胡乱诛杀就是作乱。臣下要办大案件而国君不知道,这是眼中没有君上。”屠岸贾不听。韩厥告诉赵朔赶快逃走。赵朔不同意,说:“您一定不会让赵氏的祭祀断绝,我死而无憾了。”韩厥答应了这一请求,装病不出家门。屠岸贾不请示景公,擅自跟三军将领在后宫袭击赵氏,杀死赵朔、赵同、赵括、赵婴等,全部诛灭了赵氏家族。
赵朔的妻子是成公的女儿,怀有遗腹子,便跑到景公的宫中躲藏。赵朔有个门客叫公孙杵臼,杵臼对赵朔的朋友程婴说:“您为什么不去死?”程婴说:“赵朔的夫人怀有遗腹子,如果有幸生个男孩,我抚养他;倘若是个女孩,我慢慢死吧。”过了不久,赵朔的夫人分娩,生了个男孩。屠岸贾听到消息,就到宫中搜查。夫人把婴儿藏在裤裆里,祷告说:“赵氏宗族要灭绝的话,你就号叫;倘若不该绝后,你就不出声。”到搜索的时候,婴儿竟然没有啼哭。逃脱搜捕之后,程婴对公孙杵臼说:“现在一次没有搜查到,以后一定还要再搜查,怎么办?”公孙杵臼说:“抚养孤儿成长与殉节相比哪个难?”程婴回答说:“死容易,抚养孤儿成人难呀。”公孙杵臼说:“赵氏先君厚待您,您就尽力承担起这件难事,我担当容易的,让我先死。”于是两个人商量弄来别人的一个婴儿背着,裹着华丽的襁褓,藏匿在深山中。程婴走出山来,假意对那些将军们说:“我程婴没有出息,不能抚养赵氏孤儿成长,谁能给我千金,我就告诉他赵氏孤儿藏身的地方。”将军们都很高兴,答应了他的条件,派兵士跟随程婴袭击公孙杵臼。公孙杵臼假意骂道:“小人哪,程婴!从前后宫事变,你不能殉节,跟我商量隐匿赵氏孤儿,如今又出卖我。纵然你不能抚养孤儿成人,却忍心出卖他吗?”手抱婴儿喊道:“天啊!天啊!赵氏孤儿有什么罪,请让他活下去,只杀我杵臼好了。”将军们不答应,就杀了杵臼和孤儿。诸将认为赵氏孤儿确实已死,都很高兴。然而,真正的赵氏孤儿倒反活着,程婴跟婴儿一起藏匿在山中。
过了十五年,晋景公生病,叫人占卜,说是大业(指皋陶,是赵氏和秦国嬴氏的共同祖先)的后代绝了祀的在作怪。景公问韩厥,韩厥知道赵氏孤儿活着,就回答说:“大业的后代在晋国断绝祭祀的,不就是赵氏吗?从中衍(赵氏的祖先,在世时间约公元前1557年左右,曾给殷帝大戊管理车马)开始都姓嬴。中衍人面鸟嘴,辅佐殷帝大戊,以后的几代辅佐周天子,都有完美的德行,以后到周幽王、周厉王昏庸无道,因而叔带离开周王室来到晋国,侍奉先君文侯,其后裔都替晋国服务,直到成公,世世代代都立有功勋,不曾断绝祭祀。现在惟独您灭绝赵氏宗族,国内百姓都哀伤他们,所以显现在龟甲和蓍草上。希望您考虑这件事。”景公问道:“赵氏现在还有子孙后代吗?”韩厥把全部情况如实告诉了景公。于是景公和韩厥商量立赵氏孤儿,把他召回来藏在宫中。将军们进宫探问病情,景公利用韩厥拥有的兵力胁迫诸将会见赵氏孤儿。赵氏孤儿名叫武。将军们迫不得已,就说:“当初后宫事变,是屠岸贾策划的,他假传国君的命令,指挥群臣。不是这样,谁敢发难!如果不是您有病,群臣本来就要请求立赵氏后代。现在您有命令,正是我们大家的心愿。”于是景公令赵武、程婴一一拜谢诸将,诸将反过来跟程婴、赵武进攻屠岸贾,灭了他的全族。景公又像过去对待赵氏那样赐予赵武田邑。
到赵武二十岁加冠,已为成人,程婴就辞别诸位大夫,对赵武说:“当初后宫事变,许多人殉难。我并非不能从死,我想抚养赵氏的后代成人。现在赵武已经继承赵氏,长大成人,恢复原来的爵位,我将到地下去回报赵宣孟和公孙杵臼了。”赵武哭泣叩头,坚决请求,说:“我赵武愿意劳苦筋骨来报答您至死,可您忍心离开我去死吗?”程婴说:“不行!公孙杵臼他认为我能办成事,所以先我而死,如今我不回报他,他会以为我承担的任务没有完成。”就自杀了。赵武守丧三年,为他设置供祭祀的封地,春秋两季致祭,世代不绝。以上史实主要见于《史记·赵世家》。
如果将《左传》中关于赵氏的史实和《史记》的“赵氏孤儿”传奇对照细读,就可发现二者有不少矛盾的地方:
《史记》说赵同、赵括、赵婴在公元前597年已经被屠岸贾诛杀了,可《左传》中记述公元前586年他们还活着,直到公元前583年(也就是十三年后)他们才遭到晋景公的攻伐。
《左传》中全书没有屠岸贾这个大夫的名字,《史记》中的屠岸贾其人不知出自何处?屠岸贾,屠岸是姓,贾是名,《左传》中连一个姓屠岸的也找不到。屠岸贾既是晋国的大夫,又能不经国君同意可以私自动用军队,必定在晋国有盘根错节的家族、社会基础,但史书中没有任何关于屠岸家族来历的记述,此人物贸然出现在《史记·赵世家》中,令读者摸不着头脑。人们很容易怀疑这是《史记》的作者捏造的一个人物。
按《左传》的记述,造成赵氏家族倾塌的是庄姬的嫉恨和诬陷,赵家全部死难,惟独赵武幸存,其原因是因为他是庄姬的儿子,可以豁免。这样的情节比较合理,解释得通。而《史记》关于屠岸贾进宫搜孤的情节是经不起推敲的,既然屠岸贾绝灭赵家的行动没有请示晋景公,是他假传君命,指挥三军进行的,那么,他进宫搜索赵氏孤儿,景公为什么不知道?难道屠岸贾是太上王、周天子,有超越景公的权力?难道小小的屠岸贾可以随意带兵进宫,任意抓捕人,而晋景公不敢过问?
在《左传》中,晋景公仅仅讨伐赵同、赵括,没有提及赵朔和赵婴,因为事发在晋景公十七年(公元前583年),赵朔已经死了(只有赵朔早死,他的夫人庄姬才有可能和叔叔赵婴通奸),而赵婴已被驱逐去齐国,晋国的法律管不到他了。这样的情节叙述是合情合理的。可《史记》将此事提前了十四年,发生在晋景公三年(公元前597年),被杀的人不但有赵同、赵括,而且有赵朔和赵婴,与《左传》的记述很不相符。
《左传》是一部严肃的编年史书,记载的都是每一年的大事,书中将晋国的赵婴和庄姬私通当作大事来记载,因为这件事影响深远,导致六卿之一的赵家被族灭,后来赵家的复兴也与庄姬有关,因为赵武是庄姬的儿子,可《史记》为什么对这件关键的史实丝毫不提?
《左传》和《史记》的内容有矛盾,后人应该相信那一本书呢?当然应该相信《左传》,因为《春秋左传》是孔子亲自写稿,并经鲁国史官左丘明补充而成的。孔子和左丘明都生活在春秋时代,和赵氏家族的赵盾、赵朔、赵武等几乎是同代人(孔子出生的那年离赵氏遭灭族的年代只差三十二年),他们对晋国的弑君事变和赵氏的兴衰过程应该有详细的了解,在这方面可以获得准确的信息,不会被种种谣言所迷惑。而《史记》的作者太史公出生的年代离晋景公的春秋时代有四百多年,这时,关于这件史实可能已经产生了各种不正确的传说,众说纷纭,而太史公被迷惑了,最后采用了某种与史实不符的传言。
后人有一种说法:《史记》中屠岸贾发难攻击和族灭赵家,接着程婴和公孙杵臼保存赵氏孤儿的传奇说的是韩信的门客为他存孤的史实。司马迁为韩信惋惜,听到其孤儿被保存在南越王那儿,心中很感动,很想写一篇故事,让后人知晓,但又不便将此故事原原本本地写入《史记》中,于是将事迹略加改动,隐去真名,将吕后改名为屠岸贾,将韩信改为赵朔,将萧何家改为晋景公的宫殿,而程婴和公孙杵臼本来就是韩信的门客的名字,这样写入《史记》中,就不怕追查了。当时的人可能一看就懂,现代人则弄不明白。究竟真情如何,乃一件历史疑案。