4

ユーザーから正規表現を受け入れる必要があるアプリに取り組んでいます。そのために、次のコードを使用しています。

Regex user_searchPattern = new Regex(this.userInput_regEx.Text);

これは安全ですか?
ユーザー入力をサニタイズする必要はありますか?

4

2 に答える 2

10

正規表現に無効な構文が含まれている場合はエラーが発生する可能性があります。また、特定の文字列でいわゆる病理学的正規表現がテストされている場合、処理時に指数関数的に時間とスペースを消費する可能性があります。

于 2009-05-15T08:04:33.970 に答える
0

ユーザー入力は常に悪です。「安全」とはどういう意味ですか。コードに例外をスローさせたり、他の方法で失敗させたりするエラーを含めることができますか? はい、確かに可能ですので、もちろんその準備をしておく必要があります。

于 2009-05-15T08:06:02.467 に答える