`which`和`that`引导的定语从句的主要区别在于它们的使用场景和先行词的类型:
使用场景
`which`通常用于引导非限制性定语从句,而`that`用于引导限制性定语从句。
在非正式书面语和口语中,`that`的使用较为常见;在正式书面语中,`which`更为常见。
先行词类型
`which`的先行词必须是物,且在从句中作主语或宾语。
`that`的先行词可以是人或物,且在从句中同样作主语或宾语。
特殊情况
当先行词为某些特定的词时,如`any`、`some`、`all`、`much`、`the same`、`none`、`few`等,只能使用`that`不能用`which`。
当先行词为基数词或序数词修饰时,只能使用`that`。
当先行词为形容词最高级或被形容词最高级修饰时,也只能使用`that`。
当先行词为疑问词`who`或`which`时,限制性定语从句的关系代词只能用`that`引导。
省略情况
在限制性定语从句中,`that`作为关系代词时,可以省略。
在非限制性定语从句中,`which`作为关系代词时,可以省略,但`that`不能。
总结:
`which`用于引导非限制性定语从句,指代物,且在从句中作主语或宾语,但在某些特定情况下(如先行词为某些特定的词、基数词或序数词修饰等)不能使用`which`。
`that`用于引导限制性定语从句,可以指人或物,且在从句中作主语或宾语,但在某些特定情况下(如先行词为某些特定的词、基数词或序数词修饰等)不能使用`that`。
建议在实际使用中根据具体的语境和先行词的类型选择合适的关系代词。