通过php查找字符串中的第一个数字位置

这个问题在这里已经有了答案:

  • 如何检查一个字符串是否包含特定单词? 37个答案

  • 最简单的方法是使用preg_match()标志PREG_OFFSET_CAPTURE恕我直言

    $string = 'abc2.mp3';
    if(preg_match('/[0-9]/', $string, $matches, PREG_OFFSET_CAPTURE)) {
      echo "Match at position " . $matches[0][1];
    } else {
      echo "No match";
    }
    

    strpos()是你正在寻找的PHP函数。 当字符串未找到时,此函数返回FALSE ,这就是为什么您可能会感到困惑。

    从PHP文档:

    返回相对于干草堆串起始位置的针位置(与偏移量无关)。 另请注意,字符串位置从0开始,而不是1。

    如果未找到针,则返回FALSE。

    编辑:

    你可以用preg_match()来使用正则表达式。 这个函数应该做的诀窍是:

    function getFirstNumberOffset($string){
        preg_match('/^D*(?=d)/', $string, $m);
        return isset($m[0]) ? strlen($m[0]) : FALSE;
    }
    
    链接地址: http://www.djcxy.com/p/13133.html

    上一篇: Find first occurence numerical position in a string by php

    下一篇: How to find word in string of words and numbers