Php 用于数字或特定数字的正则表达式
我无法为以下条件创建正则表达式Php 用于数字或特定数字的正则表达式,php,regex,preg-replace,Php,Regex,Preg Replace,我无法为以下条件创建正则表达式 var1 = '123' var2 = '-999' var3 = '$##99$#%' var4 = '-9999' var5 = '-123' var6 = '-99'` 条件: 接受最大长度为10位的所有整数 不接受任何字符或符号 仅接受第一个点之间的“-999”值(仅三位数字) 不接受以“-”开头且除“999”以外的任何整数 var1和var2有效,其余三个无效 这就是我迄今为止所尝试的: ^[-]?[0-9]{4}$ /^\d{1,10
var1 = '123'
var2 = '-999'
var3 = '$##99$#%'
var4 = '-9999'
var5 = '-123'
var6 = '-99'`
条件:
- 接受最大长度为10位的所有整数
- 不接受任何字符或符号
- 仅接受第一个点之间的“-999”值(仅三位数字)
- 不接受以“-”开头且除“999”以外的任何整数
var1
和var2
有效,其余三个无效
这就是我迄今为止所尝试的:
^[-]?[0-9]{4}$
/^\d{1,10}?$/
只需从字符串开头检查1到10位数字,或者精确到-999:
^(\d{1,10}|-999)$
字符串的开头^
组(
1到10位数字\d{1,10}
或|
- 准确地说
-999
终端组)
字符串结尾$
这里有一个地方可以检查:
^\d{1,10}|-999$
你自己尝试创建正则表达式了吗?我尝试了这个^[-]?[0-9]{4}$
可能会提出这个问题。@abracadver你的意思是^(?:\d{1,10}-999)$
?