Разница между «but for» и «if it were not for» в английском языке заключается в контексте использования. 1
Конструкция «but for» употребляется, когда нужно выразить, что чего-то не существовало или что-то не происходило. 3 Например: «She would have been in real trouble but for your advice» — «Если бы не ваш совет, у неё были бы настоящие неприятности». 3
Конструкция «if it were not for» используется для построения условных предложений, где одна часть зависит от другой. 1 Как правило, во второй части предложения всегда стоит слово «would». 1 При этом временной период не охватывает прошедшее время, а только настоящее и будущее. 1 Пример: «If it were not for the rain, we would go for a walk» — «Если бы не дождь, мы бы пошли на прогулку». 15
Таким образом, «but for» чаще используется для выражения общего значения «если бы не», а «if it were not for» — для построения определённых условных конструкций.