現在、次のようなデータの中に出てくる
配列words内の単語を「その他」に置き換えたいと考えております。

words内の単語が単独で出てくる場合には、置き換えることができますが、
文字列の一部になっている場合には、置換できません。

どのようにすれば、置換できるか、ご教示頂けると大変助かります。

import pandas as pd # pandas
import numpy as np

df = pd.DataFrame(
        {'x': ['カレーライス',
               'ピラフ; チャーハン',
               'チャーハン',
               'ハンバーグ; 餃子',
               '餃子',
               'そば; 玉丼',
               'うどん']})

    words = ["チャーハン","餃子"]
    for w in words:
        df["x"]=df["x"].replace(w, "その他")

    print(df)