If you use the following, you can control, at the value level, where and how the wildcards are applied...
SELECT
sd.Name,
sd.ref
FROM
#SampleData sd
CROSS APPLY ( VALUES ('%WAR'),('WARTEC'),('%TRIAGE%'),('LAB'),('BDIAG%') ) pv (predicate_values)
WHERE
sd.ref LIKE pv.predicate_values;
so...
IF OBJECT_ID('tempdb..#SampleData') IS NOT NULL
DROP TABLE #SampleData;
SELECT
d.Name,
d.ref
INTO #SampleData
FROM ( VALUES
('BA', 'WARTEC/COMGEO'),
('BA', 'WARCAMP/COMGEO'),
('BA', 'WARCAMP/WARTEC/COMGEO'),
('BA', 'MILEAGE/CC/NOTES/CAM/BHC'),
('BA', 'NOTES/MILEAGE/AICAM/BHC'),
('BA', 'CAMPAIGN'),
('BA', 'LAB'),
('BA', 'CAMPAIGN/BDIAG'),
('BA', 'BDIAG'),
('BA', 'BDIAGXXXX'),
('BA', 'LAB/TRIAGE'),
('BA', 'MILEAGE/CC/NOTES/CAM'),
('BA', 'TRIAGE'),
('BA', 'SOMEWAR')
) d (Name, ref);
SELECT
sd.Name,
sd.ref
FROM
#SampleData sd
CROSS APPLY ( VALUES ('%WAR'),('WARTEC'),('%TRIAGE%'),('LAB'),('BDIAG%') ) pv (predicate_values)
WHERE
sd.ref LIKE pv.predicate_values;
returns...Name ref
---- ------------------------
BA LAB
BA BDIAG
BA BDIAGXXXX
BA LAB/TRIAGE
BA TRIAGE
BA SOMEWAR