There was another topic similar to this one recently, but I can't find it.
If it were me, I'd create a persisted computed column (populated with the spaces removed) query it instead. I don't know much about UK postal codes other than what I've read online, so I picked a length of 12 for the length and inserted a bunch of different possibilities for the data.
IF OBJECT_ID('tempdb.dbo.Zips', 'u') IS NOT NULL DROP TABLE dbo.Zips;
CREATE TABLE dbo.Zips (
ID Integer identity(1, 1),
CONSTRAINT Zips_PK PRIMARY KEY (ID),
CleanedCode AS REPLACE(PostalCode, ' ', '') PERSISTED );
INSERT INTO dbo.Zips(PostalCode)
(' 222 333 '),
('SW 18 3FD'),
('SW 18 3F D'),
('SW1 83 FD'),
('SW1 8 3FD');
Then you can query against CleanedCode using search values without spaces.