Me alegro de que hayas venido.你来了,我很高兴。

Pretérito perfecto de subjuntivo 是用来表示已经完成的事情的虚拟式。它由 haber 的 presente de subjuntivo 加上过去分词构成,用在与 presente de subjuntivo 相同的触发词之后,只是事件已经完成,而不是正在发生或尚未发生。

简单记法: haya、hayas、haya、hayamos、hayáis、hayan + 过去分词(haya venido)。触发词和 presente de subjuntivo 相同,但事件已经结束:Me alegro de que vengas(你要来)→ Me alegro de que hayas venido(你来了)。

如何构成

取 haber 的 presente de subjuntivo,再加上过去分词,做法与 pretérito perfecto compuesto(he hablado)完全一样,只是 haber 用虚拟式形式:

haber(虚拟式) 例子
yo haya haya hablado
tú / vos hayas hayas comido
usted/él/ella haya haya vivido
nosotros/as hayamos hayamos terminado
vosotros/as hayáis hayáis llegado
ustedes/ellos/ellas hayan hayan salido

过去分词有规则形式(-ar 动词加 -ado,-er/-ir 动词加 -ido),也可能是常见的不规则形式:hecho、dicho、visto、puesto、escrito、abierto、roto、vuelto(以及它们的派生词,如 devuelto)。宾语代词和自反代词不会放在 haya 和过去分词之间,而是放在 haya 之前:No creo que se haya ido、Espero que se lo hayas dicho。

汉语常用“了”“完”“过”等成分表示完成,在表达情感或怀疑的句子里也不换成别的“语气”(“你来了,我很高兴”“我怀疑她看过这部电影”)。西班牙语在同样的情形下要用虚拟式,并且用 haber 加过去分词来表示完成:Me alegro de que hayas venido、Dudo que la haya visto、cuando hayas terminado。

事件已经完成时

触发词为现在时的情况下,presente de subjuntivo 指向正在发生或尚未发生的事,而 pretérito perfecto de subjuntivo 指向说话时已经结束的事:

正在发生 / 尚未发生 已经完成
Me alegro de que vengas. Me alegro de que hayas venido.
Dudo que termine hoy. Dudo que haya terminado.
No creo que lo vea. No creo que lo haya visto.
Es una pena que se vayan. Es una pena que se hayan ido.

下面按主要的触发词类型来看它的用法:

  • 情感: Me sorprende que haya llegado tan temprano.(他这么早就到了,我很惊讶。)
  • 怀疑与否定: No creo que hayan recibido el mensaje.(我觉得他们没有收到消息。)Es posible que ya haya salido.(他可能已经出门了。)
  • 希望: Espero que hayas dormido bien.(希望你睡得好。)Ojalá haya llegado bien.(但愿她平安到了。)这里的 ojalá 针对的是很可能已经发生的事,不同于 imperfecto de subjuntivo 的其他用法中那些不太可能实现的愿望。
  • 带期限的影响或必要性: Quiero que hayas terminado para las cinco.(我希望你五点前做完。)

到未来某个时刻已经完成

在 cuando、en cuanto、después de que 或 hasta que 这类时间词之后,当动作先完成、而主句是将来时或指令时,也要用 pretérito perfecto de subjuntivo。它把 futuro perfecto 里“将会完成”的意思放进了虚拟式从句里:

  • Llámame cuando hayas terminado.(你做完了就给我打电话。)
  • Saldremos en cuanto haya parado la lluvia.(雨一停,我们就出门。)
  • No te vayas hasta que hayas hablado con ella.(在你和她谈过之前,不要走。)

可以对照 Llámame cuando termines,它同样正确:它倾向于把“做完”看作那一刻本身,而 cuando hayas terminado 强调在打电话之前就已经做完了。

带有时间标记的已完成过去事件

遇到 ayer 这类已经结束的时间标记时,说话人的用法不一:No creo que haya venido ayer 很常见,尤其在西班牙,而 No creo que viniera ayer 也被广泛使用,在拉丁美洲尤其如此。两种都不算错。当事件与现在有联系,或时间段尚未结束(esta semana、hoy)时,pretérito perfecto de subjuntivo 是自然的选择;虚拟式的时态呼应一课会理清整体情形,包括主句动词为过去时的情况。

常见错误

  • ❌ Me alegro de que has venido. → ✅ Me alegro de que hayas venido.(me alegro de que 是触发词,所以 haber 要用虚拟式形式,而不是陈述式的 has。)
  • ❌ Llámame cuando habrás terminado. → ✅ Llámame cuando hayas terminado.(在 cuando 之后,表示尚未成为现实的事,西班牙语用虚拟式,而不是将来时。)
  • ❌ Espero que hayas ponido las llaves aquí. → ✅ Espero que hayas puesto las llaves aquí.(poner 的过去分词是不规则的 puesto。)
  • ❌ No creo que haya se ido. → ✅ No creo que se haya ido.(代词放在 haya 之前,而不是插在 haya 和过去分词之间。)

小测验

  1. 补全:Me alegro de que ya __________ (llegar, vosotros).
  2. 补全:Dudo que ella __________ (ver) la película.
  3. 补全:Llámame en cuanto __________ (hablar, tú) con el médico.
  4. 哪一句表达的是对一个也许已经存在的结果的希望:Ojalá apruebe 还是 Ojalá haya aprobado?
  5. 补全:Es probable que se lo __________ (decir, ellos) ya.
查看答案
  1. hayáis llegado:事件已经完成,而且 me alegro de que 是触发词。
  2. haya visto:ver 的过去分词是不规则的 visto。
  3. hayas hablado:在 en cuanto 之后,表示先完成的事。
  4. Ojalá haya aprobado:这个希望针对的是可能已经存在的结果。
  5. hayan dicho:decir 的过去分词是不规则的 dicho,代词 lo 仍放在 hayan 之前。

要点回顾

  • Pretérito perfecto de subjuntivo = haya、hayas、haya、hayamos、hayáis、hayan + 过去分词(haya venido)。
  • 它跟随与 presente de subjuntivo 相同的触发词,但用于已经完成的事件(Me alegro de que hayas venido)。
  • 在 cuando、en cuanto、después de que 和 hasta que 之后,它表示先完成的事(Llámame cuando hayas terminado)。
  • 代词放在 haya 之前,不规则的过去分词(hecho、dicho、visto、puesto、escrito……)保持不规则。
  • 遇到 ayer 这类已经结束的时间标记时,haya venido 和 viniera 都能听到;两者都不算错。