如何为 -1:+1 模式制作正则表达式,其中1是任何整数?
我需要在preg_match()中使用它,但我的正则表达式技能都没有......
答案 0 :(得分:2)
使用以下正则表达式
-\d+:\+\d+
匹配-
后跟一个或多个数字,后跟:
后跟+
后跟一个或多个数字。
如果您希望两者都是相同的整数
,请使用以下内容-(\d+):\+\1
答案 1 :(得分:1)
<?php
$subject = "-100:+100";
$pattern = '/-\d+:\+\d+/';
preg_match($pattern, $subject, $matches);
print_r($matches);
?>
\ d指数字, +表示前述中的一个或多个 所以\ d +是一个或多个数字,依此类推
未经测试
答案 2 :(得分:1)
您可以将单个数字与\d
匹配。对于1位或更多位数,请使用\d+
。您必须转义其他字符,因此\-
和\+
用于匹配这些字符。但我建议您阅读正在使用的语言的正则表达式教程 - 它并不像它看起来那么难!
答案 3 :(得分:0)
如果您需要实数(例如001不应匹配)请使用此模式
/-([1-9]\d*|0):\+([1-9]\d*|0)/
|
表示或
[1-9]
表示1到9之间的数字之一(含)
\d*
表示数字0次或更多次