私は次のコードを使用して変数からデジタル値のみを返します。変数から文字値「testing」のみを取得し、文字列から「on」を削除する方法を説明します。
<?php
$valuecheck="testing on 123568";
$check1=preg_replace('/\D/', '', $valuecheck);
echo $check1;
?>
Output required:
testing
ありがとう
私は次のコードを使用して変数からデジタル値のみを返します。変数から文字値「testing」のみを取得し、文字列から「on」を削除する方法を説明します。
<?php
$valuecheck="testing on 123568";
$check1=preg_replace('/\D/', '', $valuecheck);
echo $check1;
?>
Output required:
testing
ありがとう
の代わりに\D
、を使用します[^a-zA-Z]
(これが「文字値」の意味であると想定します)。基本的に、を入れ[^SOMETHING]
ます。ここで、その「何か」は、有効と見なしたいすべての文字のセットです。
私の解決策はもう少し冗長になるのではないかと思います。
$result = '';
$c = explode( ' ', $valuecheck );
foreach ($c as $ci) {
if (preg_match( '[\D]', $ci ) == 1) { continue; }
$result = $ci; break;
}
echo $result;
スペースを区切り文字として扱います。これにより、少なくとも1つの数値を含む文字列が無視され、最初に見つかった「修飾された」文字列が返されます。