1

私は次のコードを使用して変数からデジタル値のみを返します。変数から文字値「testing」のみを取得し、文字列から「on」を削除する方法を説明します。

<?php
$valuecheck="testing on 123568";
$check1=preg_replace('/\D/', '', $valuecheck);
echo $check1;
?>

Output required:

testing 

ありがとう

4

2 に答える 2

3

の代わりに\D、を使用します[^a-zA-Z](これが「文字値」の意味であると想定します)。基本的に、を入れ[^SOMETHING]ます。ここで、その「何か」は、有効と見なしたいすべての文字のセットです。

于 2012-07-13T15:12:00.117 に答える
0

私の解決策はもう少し冗長になるのではないかと思います。

$result = '';
$c = explode( ' ', $valuecheck );
foreach ($c as $ci) {
    if (preg_match( '[\D]', $ci ) == 1) { continue; }
    $result = $ci; break;
}
echo $result;

スペースを区切り文字として扱います。これにより、少なくとも1つの数値を含む文字列が無視され、最初に見つかった「修飾された」文字列が返されます。

于 2012-07-13T15:48:38.293 に答える