>>745では、ワードが不適切でした。申し訳ございません。訂正いたします。

●説明
大量の文字データの中から「新宿」という文字列をMATCHさせたい。
ただし、「西新宿」「新宿駅」「東京都新宿区」「西武新宿線」を含む文字列はMATCHさせない。

●テストケース(文字列)と期待する結果(MATCHするかしないか)
新宿     MATCHする
湘南新宿   MATCHする
新宿御苑   MATCHする
東京都新宿  MATCHする
新宿区    MATCHする
西武新宿   MATCHする
新宿線    MATCHする

西新宿    MATCHしない
新宿駅    MATCHしない
西新宿駅   MATCHしない
東京都新宿区 MATCHしない
西武新宿線  MATCHしない

●試した正規表現
(?<!西)((?<!東京都)((?<!西武)新宿|新宿(?!線))|((?<!西武)新宿|新宿(?!線))(?!区))(?!駅)

●質問内容
上記の正規表現で、期待する結果は得られたのですが、どうも長ったらしく、スッキリしません。
もし、「東京都新宿区」や「西武新宿線」のように、真ん中に対象文字列ありで除外したい文字列がどんどん増えていったとしたら非常に面倒な気がします。
もっとコンパクトに短く効率的に書けたりするなど、いい案はございますでしょうか?アドバイスをいただけると幸いでございます。

●補足
「事前にif文などで、MATCHさせたくないワードを除外する」ということは諸事情によりできません。
たった一つの正規表現で表すことが絶対条件です。