【问题标题】:Validate numbers in /number/number/ format [closed]验证 /number/number/ 格式的数字 [关闭]
【发布时间】:2018-02-18 21:13:46
【问题描述】:

我要检查是否在字符串中

/number/number/

或不,例如:

something/2018/02/something_else

如何检查 /2018/02/ 是否在字符串中,我认为使用 preg_match,但我不知道如何。

我的尝试:

$mystring = "something/2018/02/something_else";
preg_match("/[0-9]/[0-9]/",$mystring);

【问题讨论】:

  • 实在不清楚你想要什么,能不能提供一些具体的例子
  • 检查是否在字符串/number/number/中,例如我的字符串:something/2018/02/something_else,所以检查/2018/02/是否在
  • 这就是你在问题中所说的,只是重复它没有帮助
  • @rtfm 我猜他/她想检查 url 是否包含数字(日期)或不使用 preg_match()
  • 我认为使用 preg_match("/[0-9]/[0-9]/",$mystring),但不起作用

标签: php regex preg-match


【解决方案1】:

模式:~/\d{4}/\d{2}/~Pattern Demo

您需要使用模式分隔符(最好是分隔模式中不存在的字符——以避免不必要的转义)。

您还需要告诉正则表达式引擎您希望匹配多少位数。这是在大括号内完成的。

代码:(Demo)

$mystring = "something/2018/02/something_else";
if(preg_match("~/\d{4}/\d{2}/~",$mystring,$out)){
    echo "Found: {$out[0]}";
}else{
    echo "Date components not found";
}

输出:

Found: /2018/02/

【讨论】:

    猜你喜欢
    • 2023-02-19
    • 2017-12-08
    • 1970-01-01
    • 1970-01-01
    • 2021-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多