本文目录一览:
php 如何判断字符串是13或者14开头的
$first = substr($str, 0, 1);
$second = substr($str, 1, 1);
if ($first == 1 && ($second == 3 || $second == 4)) {
echo "right";
}
php 判断是否包含
要是指的是判断一个字符串在另一个字符串是否包含?
方法一、使用 strstr
,strstr
返回需要判断是否被包含的字符开始到结束的字符串,如果没有返回值,则不包含。
举例,判断是否包含字符“#”:
<?php
$str = 'abc#defg';
$in = strstr($str, '#');
echo $in; // 输出结果为: #defg
?>
方法二、使用 stristr
,它的用法和 strstr
的完全一样。唯一的区别是 stristr
不区分大小写,而 strstr
区分大小写。可以根据实际情况是否区分大小写来使用。
方法三、使用 strpos
,但它对中文的支持不是很好,它的返回值为 boolean 型,也就是 true 和 false(真和假)。执行速度比 stristr
和 strstr
都快。strpos
函数中有一个参数用于指定判断的位置,默认为空,即判断整个字符串。
下面看例子:
<?php
$str = 'bde';
$in = 'b';
$output = strpos($str, $in);
?>
方法四、将字符串用 explode
来拆分数组再判断。如下:
function chstr($str, $in) {
$tmparr = explode($in, $str);
if (count($tmparr) > 1) {
return true;
} else {
return false;
}
}
$str = 'abc#defg';
$in = '#'; // 判断是否包含#这个字符
$bh = chstr($str, $in);
if ($bh) {
echo '字符串' . $str . '包含' . $in;
} else {
echo '字符串' . $str . '不包含' . $in;
}
请问php 如何正则匹配以 &开始,以;结束的字符串呢?比如: &abc; 或者 et564r;
<?php
// 模式分隔符后的"i"标记这是一个大小写不敏感的搜索
if (preg_match("/^(.*);$/i", "abc;")) {
echo "A match was found.";
} else {
echo "A match was not found.";
}
?>