0

文字列内のXXは常に変更され、文字列は長くても短くてもかまいません。また、検索された単語がなくてもかまいません。ここで、XXは数字の例です。

1 kom. nije naručeno, obično dolazi za 5 dana., slični: sony-6am6ptb1a (0 kom.), sony-s006pb1a (-9 kom.)

だから私はそれからちょうど出力する必要があります:običnodolaziza 5 dana

では、どのような場合でも&findだけを選択するにはどうすればよいですか?

$find = "obično dolazi za XX dana.";

$string ="1 kom. nije naručeno, obično dolazi za XX dana.";

if (strpos($string,$find) !== false) {
  echo '$string contains $find';
}

私はこれだと思います:

$string = "1 kom. nije naručeno, obično dolazi za XX dana.";

for(int intIndex = 1; intIndex <= 31; intIndex++)
{
 $find = "obično dolazi za " . strval(intIndex) . " dana."

 if (strpos($string,$find)) 
 {
 echo '$string contains $find';
 }
}
4

2 に答える 2

0

「検索文字列」にはXX変化する部分 ( ) があり、特定の状況でそれがどうなるかは必ずしもわからないと想定しています。strposセグメントが不明なため使用できません。

検索文字列の左右の部分に基づいて正規表現を使用する必要があります。

詳細については、PHP マニュアル: preg_matchを参照してください。

「XX」が何を表しているかを知らなければ、これ以上何も提供できません。

または...

を返したい場合XX、左端と右端の部分は一定です...

// given '1 kom. nije naručeno, obično dolazi za XX dana.'

$string = str_replace("1 kom. nije naručeno, obično dolazi za ", "", str_replace(" dana.", "", $string));
// $string now contains the value of 'XX'

print $string;

出力はXXです。

または...

これはあなたのニーズに十分ですか..?[あなたが思いついたものに基づいています! :) ]

<?php
    // just throwing '23' in there to demonstrate the awesome power!
    $string = "1 kom. nije naručeno, obično dolazi za 23 dana.";
    for ($intIndex = 1; $intIndex <= 31; $intIndex++) {
        $find = "1 kom. nije naručeno, obično dolazi za " . strval($intIndex) . " dana.";

        // we test that it's not 'false', because it could be '0'
        if (strpos($string, $find) !== false) {
            echo "$string contains $find";
        }
    }
?>
于 2012-12-20T08:25:09.627 に答える
0

出力に問題があると推測したい...そしてその戻り

 $string contains $find

"の代わりに使用'

$find = "obično dolazi za XX dana.";
$string ="1 kom. nije naručeno, obično dolazi za XX dana.";
if (mb_stripos($string,$find) !== false) {
  echo "$string contains $find";
}

出力

 1 kom. nije naruÄeno, obiÄno dolazi za XX dana. contains obiÄno dolazi za XX dana.
于 2012-12-20T08:25:35.607 に答える