Asp.net 正则表达式匹配“;“真的”;或;假;
我需要创建正则表达式验证器,它需要匹配文本“True”或“False”(不区分大小写) 我试过下面的正则表达式Asp.net 正则表达式匹配“;“真的”;或;假;,asp.net,regex,vb.net,validation,Asp.net,Regex,Vb.net,Validation,我需要创建正则表达式验证器,它需要匹配文本“True”或“False”(不区分大小写) 我试过下面的正则表达式 ^(True|False|TRUE|FALSE)$ 这是正确的吗?但区分大小写存在问题 编辑 我在以下答案中尝试了regex,但它没有启动,因为?I使用RegexOptions.IgnoreCase选项并使用以下regex: ^(true|false)$ 或者使用忽略大小写修改器?i 像这样: ^(?i:true|false)$ 另一个选项是将字符串转换为小写,只需使用^(tru
^(True|False|TRUE|FALSE)$
这是正确的吗?但区分大小写存在问题
编辑
我在以下答案中尝试了regex,但它没有启动,因为
?I
使用RegexOptions.IgnoreCase
选项并使用以下regex:
^(true|false)$
或者使用忽略大小写修改器?i
像这样:
^(?i:true|false)$
另一个选项是将字符串转换为小写,只需使用
^(true | false)$
或者使用RegexOptions.IgnoreCase
或内联?i
修饰符
^(?i)(true|false)$
通过一个小优化:
^(?:tru|fals)e$
由于(?i)没有验证,我们将在代码中设置大小写不敏感
对于任何需要代码的未来读者:
Dim FoundMatch As Boolean
Try
FoundMatch = Regex.IsMatch(SubjectString, "^(?:tru|fals)e$", RegexOptions.IgnoreCase)
Catch ex As ArgumentException
'Syntax error in the regular expression
End Try
单词
True
或False
的另一种方法:
If Boolean.TryParse(yourString, New Boolean) = true Then
'ok
else
'not ok
End If
如果要将文本转换为布尔变量并在以后使用:
Dim value As Boolean
If Boolean.TryParse(yourString, value) = true Then
'Use value
else
'Handle a wrong text situation
End If
Boolean.TryParse
忽略大小写trUe
或trUe
解析ok我已经检查了这篇文章中的所有答案,但没有任何结果
我猜Asp.Net RegularExpression validator不支持?I
最后我使用了下面的正则表达式
^([Tt][Rr][Uu][Ee]|[Ff][Aa][Ll][Ss][Ee])$
它像预期的那样工作
此正则表达式将用于动态创建的Asp.net
RegularExpressionvalidator
验证,因为而不使用此表达式启动?i
验证,因为而不使用此表达式启动?i
验证,因为?i@VigneshKumar哈奇怪。既然是这样,我就在代码中加入了不区分大小写的内容。@vignesh使用RegexOptions.IgnoreCase而不是(?I)用vb.net标记问题不是一个好主意,而事实上你使用的是javascript(客户端验证)。@UlugbekUmirov它不是javascript(客户端验证)。此正则表达式将用于动态创建的Asp.net RegularExpressionValidator。它最终是javascript。您可以在将EnableClientScript
设置为false的情况下尝试上面的答案,这些答案将起作用。到底是什么不起作用?当您尝试发布时,它将被触发。在缺少(?i)
的情况下,我认为这是一个您可以使用的解决方案。