RegEx来自用户输入是否安全?

Unk*_*ech 4 c# regex user-input

我正在开发一个需要接受用户RegEx的应用程序,为此我使用以下代码:

Regex user_searchPattern = new Regex(this.userInput_regEx.Text);
Run Code Online (Sandbox Code Playgroud)

这样做安全吗?
是否需要清理用户输入,如果是,如何?

Gum*_*mbo 10

如果正则表达式具有无效语法,则可能会收到错误,或者如果在某个特定字符串上测试所谓的病态正则表达式,则在处理时可能会消耗指数量的时间和空间.

  • 我在具有特定超时的线程中运行regexp以避免DoS(如果相关,因为如果用户使用自己的计算机,我不太在意) (3认同)