我正在使用Visual Studio中的RegularExpressionValidator,但是我很难为我的需求创建正确的正则表达式。这是我想要的:
输入可以包含任何字符,除了<>:"/|?*
。此外,输入不能连续包含两个反斜杠。
因此,your\mom
可以,但 your\\mom
和 your*mom
都不行。
目前最接近的一个正则表达式是:
^(?=.*[^<>:"/|?*])(?:[^\\]+|\\(?:$|[^\\])).{0,100}$
但是它不起作用。
我正在使用Visual Studio中的RegularExpressionValidator,但是我很难为我的需求创建正确的正则表达式。这是我想要的:
输入可以包含任何字符,除了<>:"/|?*
。此外,输入不能连续包含两个反斜杠。
因此,your\mom
可以,但 your\\mom
和 your*mom
都不行。
目前最接近的一个正则表达式是:
^(?=.*[^<>:"/|?*])(?:[^\\]+|\\(?:$|[^\\])).{0,100}$
但是它不起作用。
^(?!.*\\\\)[^<>:"/|?*]*$
应该这样做。
(?!.*\\\\)
断言字符串中没有两个连续的反斜杠。
[^<>:"/|?*]*
匹配除字符类中的字符外的任意数量字符。
也就是说,除非你在谈论 Visual Studio(IDE 环境本身)的正则表达式特征,它具有极不标准的正则表达式风格。