我需要一个正则表达式来验证two or one数字然后,或者.再次two or one数字.
所以,这些是有效的输入:
11,11
11.11
1.1
1,1
Run Code Online (Sandbox Code Playgroud)
use*_*419 72
\d{1,2}[\,\.]{1}\d{1,2}
Run Code Online (Sandbox Code Playgroud)
编辑:更新以满足新的要求(评论);)
编辑:根据布莱恩删除不必要的qtfier
^[0-9]{1,2}([,.][0-9]{1,2})?$
Run Code Online (Sandbox Code Playgroud)
Mer*_*avi 24
为了以正则表达式的形式表示单个数字,您可以使用以下任一方法:
[0-9]或\ d
为了指定您要添加的数字出现次数
[0-9]*:星号表示有零个或多个数字
[0-9] {2}:{N}表示N位数
[0-9] {0,2}:{N,M} N位或M位
[0-9] {0-9}:{NM} N位到M位.注意:M可以留空以进行无限表示
假设我想表示1到99之间的数字,我会这样表达:
[0-9] {1-2}或[0-9] {1,2}或\ d {1-2}或\ d {1,2}
或者假设我们正在使用二进制显示,显示字节大小,我们希望我们的数字在0和1之间,字节大小的长度为8,所以我们将表示如下:
[0-1] {8}表示二进制字节
然后,如果你想添加一个,或一个.你会用的符号:
\, 要么 \.或者你可以使用[.]或[,]
您还可以在可能的值之间进行选择
[.,]表示点或逗号符号
而且你只需要将各个部分连接在一起,所以如果你想要表示一个1位或2位数字,后面跟一个逗号或句号,然后是两个以上的数字,你可以按如下方式表示:>
[0-9] {1,2} [,]\d {1-2}
另请注意,C++字符串中的正则表达式字符串必须双击,因此每个\变为\\
Bry*_*ley 14
\d是指大多数语言中的数字.您还可以使用[0-9]所有语言.用于"期间或逗号"使用[\.,].根据您的语言,您可能需要根据引用表达式的方式添加更多反斜杠.最终,正则表达式引擎需要看到一个反斜杠.
*意思是"零或更多的",所以\d*并[0-9]*表示"零个或多个数字".?意思是"零或一".这些限定词都不是唯一的.大多数语言也让你{m,n}用来表示"m和n之间"(即:{1,2}表示"介于1和2之间")
由于点或逗号和附加数字是可选的,您可以将它们放在一个组中,并使用?量词来表示该组中的"零或一".
把它们放在一起你可以使用:
\d{1,2}([\.,][\d{1,2}])?
Run Code Online (Sandbox Code Playgroud)
含义,一个或两个数字\d{1,2},后跟零或一个(...)?由点或逗号后跟一个或两个数字组成的组[\.,]\d{1,2}
mik*_*kel 11
\d{1,2}[,.]\d{1,2}
Run Code Online (Sandbox Code Playgroud)
\ d表示一个数字,{1,2}部分表示前一个字符的1或2(在这种情况下为\ d),[,.]部分表示逗号或点.
^\d\d?[,.]\d\d?$
Run Code Online (Sandbox Code Playgroud)
^ 和 $ 表示输入字符串的开始和结束(没有这部分,将匹配字符串的 23.45,如 123.45)。\d 表示数字,\d? 表示可选数字,[,.]表示点或逗号。工作示例(当您单击左侧菜单 > 工具 > 代码生成器时,您可以为 9 种流行语言之一生成代码,如 c#、js、php、java... )。
^\d\d?[,.]\d\d?$
Run Code Online (Sandbox Code Playgroud)