Watched Words - 特定の単語にワイルドカードとして使用されるのではなく、アスタリスクの使用をブロックする方法はありますか?

少し検索してみましたが、答えが見つかりませんでした。もしどこかで既に回答されているようでしたら申し訳ありません。

要約すると、一部のユーザーが「監視単語」の代わりに、アスタリスクを使って単語を回避しています。例えば、「f**k」のように投稿しています。これを「監視単語」に追加しようとしましたが、feedback、firetruck、Frederick のように、fで始まりkで終わるものすべてがブロックされてしまいました。

上記のようなものを「監視単語」に追加して、ワイルドカードとして扱わずに、その特定のフレーズのみを検索するようにする方法はありますか?

「いいね!」 2

試していませんが、バックスラッシュでエスケープする f\\*\\*k はおそらく機能するはずです。

「いいね!」 3

うまくいったようです。ヒントをありがとうございます。 :slight_smile:

「いいね!」 2

うーん、ダメでした…早とちりでした。それはフレデリックをブロックしませんが、f**kもブロックしません。

「いいね!」 1

https://regex101.com/r/YG5IIe/1 で動作すると思うので、Discourse でも動作するはずだと期待しています。なぜそうならないのか疑問です。

「いいね!」 2

これは正規表現を有効にする必要があるということでしょうか?

ホスト版を使用しており、少し検索したところ、チームに連絡して有効になっているか確認する必要があることがわかりました。

「いいね!」 1

サイトの設定をオンにする必要があるようです


正規表現をオンにした後も「*」がワイルドカードとして認識されるため編集

「いいね!」 3

しかし、そうではありません。Discourse は f\\*\\*k を文字通りに解釈します。そのため、ユーザーが実際に f\\*\\*k と入力した場合に機能します。

「いいね!」 2

その通りです。:+1: その設定はデフォルトで無効になっており、ホスト型サイトの場合はこちらで有効にする必要があります。ご希望の場合はお知らせください。:slight_smile:

もし切り替えるのであれば、既存のすべての監視単語を正規表現(regex)形式に変換して再適用する必要があるかもしれません。

正規表現は、単純なバージョンよりも正確に設定するのが難しい場合がありますが、正規表現を正しく設定すれば、より汎用的に使用できます。この場合、複数の回避策を特定できるものが必要になります(例:「f**k、f%ck、f&@k、fuck」)。ただし、すべてを捕捉するのは whack-a-mole のようなゲームになる可能性があります(特に、誰かが意図的に単語ブロックを回避しようとしている場合、何が許容され、何が許容されないかのガイドとして使用するのではなく)。

「いいね!」 4

一般的に、単語の「f**k」をどのように視聴できるか興味があります。すべてのバリエーションなどを気にせず、アスタリスクがワイルドカードではなく文字であることをどのように伝えることができますか?エスケープは機能しません。

「いいね!」 2

watched words regular expressions をオンにして、f\*\*k を Block に追加すると機能するようです。通常のユーザーでテストしていますか、それとも管理者ですか? 実際、Block は管理者でも機能します。

「いいね!」 3

管理者として。しかし、他のトピックで述べたように、今日はそういう日の一つであり、昨日も同様にひどかったと思います。正規表現であることをシステムに伝えませんでした。

もっとコーヒーが必要です。

「いいね!」 1

追伸、他の監視対象の単語もあって正規表現を有効にした場合、リストに追加されたすべての単語に影響することに注意してください。部分一致を避けるために単語の境界を変更する必要があることを意味します。

「いいね!」 8