字符串必须以数字0-9开头,以数字[0-9]结尾

时间:2015-01-22 04:13:33

标签: php regex string

我正在使用 preg_match()函数验证字符串。

Bellow你可以看到我的代码,它工作正常,它会检查字符串是否以Numbers开头,并以80结尾。

<?php
$wrd=$_POST["txt"];
if(preg_match("/^[0-9)]{3}80\z/",$wrd))
{echo "this string is ok";}
else {echo "false";}?>

被修改

现在我想要的是:字符串必须以数字0-9开头,以数字0-9结尾。字符串的长度必须至少为3。 任何帮助都是适当的!感谢

3 个答案:

答案 0 :(得分:3)

以任何数字0-9结尾的任何字符串:

'/.*[0-9]+$/'

任何以0-9结尾的字符串

'/.*[0-9]$/'

您现有的比赛以任意数量(而不是80)结尾:

'/^[0-9]{3}.*[0-9]+$/'

您现有的正则表达式中还包含字符集中的),该字符集将匹配0-9或字符串开头的括号 - Example

修改

对于您编辑过的问题 - &#34;字符串必须以数字0-9开头,以数字0-9结尾。字符串的长度必须为3。&#34; - 尝试:

/^\d.\d$/

Example here

答案 1 :(得分:3)

以下正则表达式将匹配以数字0-9开头,以数字0-9结尾并且正好是3个字符的字符串:

^[0-9].[0-9]$

这也有效:

^\d.\d$

Please see Regex Demo here.

答案 2 :(得分:2)

你可以尝试

^\d.+\d$

这可确保表达式以数字开头,您可以在其间包含任意数量的字符,并以数字结尾。