我如何在php中检查这个?
$var1 = "pluto_saa1";
$var2 = "pluto_sab1";
$var3 = "pluto_sac1";
$var4 = "pluto_sad1";
$var5 = "pluto_test";
例如,var1, var2, ... var5包含s
后跟两个未知字母并以1
但var5结尾的内容不受欢迎。
你可以帮帮我吗?
那应该这样做:
/s[a-zA-Z]{2}1/
2 个大写或小写字母后跟一个 1。
你可以使用这个正则表达式
/s[a-zA-Z]{2}1/
[a-zA-Z]
将匹配单个大写或小写字母
{n}
是一个与前面的模式匹配 n 次的量词
尝试这个
$patterns = '/pluto_s(.*?)1/is';
$var1 = "pluto_saa1";
$var2 = "pluto_sab1";
$var3 = "pluto_sac1";
$var4 = "pluto_sad1";
$var5 = "pluto_test";
$array = array($var1, $var2, $var3, $var4, $var5);
foreach($array as $data)
{
if( preg_match($patterns, $data, $matches))
{
var_dump($matches);
}
}
这将输出
array (size=2)
0 => string 'pluto_saa1' (length=10)
1 => string 'aa' (length=2)
array (size=2)
0 => string 'pluto_sab1' (length=10)
1 => string 'ab' (length=2)
array (size=2)
0 => string 'pluto_sac1' (length=10)
1 => string 'ac' (length=2)
array (size=2)
0 => string 'pluto_sad1' (length=10)
1 => string 'ad' (length=2)
function check_str($str) {
$pattern="%_s+[a-z]{2}1$%";
if(preg_match($pattern,$str)) {
echo 'ok';
}
}
check_str($var1);