正規表現に関する質問です。

■概要
「そうですねabcの次はdefですね笑」

上記文章のdefにマッチさせる正規表現文字列をご教授下さい。

■ロジック
***笑*** の中に存在する「最後の」半角英数文字を取り出したい。

■現在の正規表現文字列
([0-9a-zA-Z!-~]+)(.*)(笑)

■現在の正規表現文字列に対するマッチ結果
マッチ文字列 : abcの次はdefですね笑
マッチ文字列グループ1 : abc
マッチ文字列グループ2 : の次はdefですね
マッチ文字列グループ3 : 笑

■質問内容
上記グループのいずれかにdefが該当するような
正規表現文字列を教えて下さい。
ポイントは「最後の」です。