私は次のような変数を持っています:
$var1 = "33081PA-5112";
しばらくすると次のようになります。
$var1 = "33083";
$var1 = "33081PA-1132";
$var1 = "31183";
$var1 = "13081PA-2132";
PA- がある場合はどのように判断すればよいので、PA- の後の数値を他の変数に取得する必要があります。
ありがとう
これにより、必要なものが得られます。
$var1 = "33081PA-1132";
preg_match('/^([0-9]*)PA-/',$var1,$match);
$var1_cut = $match[1];
preg_match('/PA-([0-9]*)/',$var1,$match);
$var2 = $match[1];
//Outputs
print_r($var1); //33081PA-1132
print_r($var1_cut); //33081
print_r($var2); //1132
どうぞ:
<?php
$var1 = "13081PA-2132";
$pos = strpos( $var1, 'PA-');
echo $pos . "\n";
if( $pos > -1 )
{
$newVal = substr($var1, $pos+3 );
echo $newVal;
}
?>
出力:
5
2132
strpos() を使用します。
if(strpos($var,'PA-') !== false) // code to run if the string has a PA-
<?php
$var1 = "33083";
$var1 = "33081PA-1132";
if(strstr($var1, 'PA') !== false){ // If it has the PA
$parts = explode('PA-', $var1); // Split by dash
echo $parts[0]; // Left part
echo '<br />';
echo $parts[1]; // Right part
}else{
echo $var1; // It has not PA
}
?>
if(trim(str_replace(range(0,9),'', $var1)) == 'PA-') {
//do stuff
}
regex
マッチを行うことができます:
preg_match("{PA-(\d+)}",$var,$array);
echo $array[1][0];