Thanks for the input, decided to go with Angular method. Works really well and can be applied.
<PublishingWebControls:EditModePanel PageDisplayMode="Display" ID="EditModePanel5" runat="server" CssClass="edit-mode-panel title-edit">
<script type="text/javascript">
angular.module('Empty', []).controller('EmptyController', ['$scope', '$element', function($scope, $element){
angular.element($element).text().trim() != "" ? angular.element($element).parent().show() : angular.element($element).parent().remove();
}]);
</script>
</PublishingWebControls:EditModePanel>
Then on the field elements themselves
<div class="tags" data-ng-app="Empty">
<div class="qin-label" id="inputFormController">
<strong><SharePointWebControls:FieldProperty FieldName="Regions" PropertyName="Title" runat="server" />: </strong>
</div>
<div data-ng-controller="EmptyController">
<Taxonomy:TaxonomyFieldControl FieldName="Regions" runat="server"></Taxonomy:TaxonomyFieldControl>
</div>
</div>
Works perfectly, big shout out to Cas van Iersel who came up with the solution, full article can be seen here...Hide empty fields on a SharePoint 2013 Page Layout