0

我正在尝试验证字符串是否包含并以BA700. 我曾尝试preg_match()在 PHP 中使用该函数,但我没有任何运气。我的代码如下:

preg_match('/^[0-9]{3}-[0-9]{4}-[0-9]{4}$/', $search))

不幸的是,这不起作用。有任何想法吗?

更新代码:

$needle = 'BA700';
$haystack = 'BA70012345';

if (stripos($haystack, $needle)) {
    echo 'Found!';
}

这对我也不起作用

4

3 回答 3

0

试试substr喜欢

$needle = 'BA700';
$haystack = 'BA70012345';
if(substr($haystack, 0, 4) == $needle) {
    echo "Valid";
} else {
    echo "In Valid";
}

UPPER您还可以通过更改任何一个或LOWER类似的方式来检查案例

if(strtoupper(substr($haystack, 0, 4)) == $needle) {
    echo "Valid";
} else {
    echo "In Valid";
}
于 2013-08-08T04:36:18.430 回答
0

这是正确使用stripos的方法

if (stripos($haystack, $needle) !== false) {
    echo 'Found!';
}
于 2013-08-08T04:37:14.480 回答
0

也许我把这个看得太字面了,但是:

if (strncmp($string, 'BA700', 5) === 0) {
    // Contains and begins with 'BA700'
}

如果BA700不区分大小写,则:

if (strncasecmp($string, 'ba700', 5) === 0) {
    // Contains and begins with 'ba700'
}

不应该比这更多。

如果您想知道,正则表达式是:

if (preg_match('/^BA700/', $string) === 1) {
    // Contains and begins with 'ba700'
}
于 2013-08-08T04:37:41.783 回答