0

ここに私のテストコードがあります:

$strings=array(
'Low Minimum',
'Low 10 Piece Minimum',
'10 piece minimum',
'20 piece minimum',
'low 6 piece minimum',
'100 piece minimum',
'This item is offered with a 1000 piece minimum',
'Place your order now. This item has a 75 piece minimum',
'Place your order now. This item has a low 75 piece minimum',
);

foreach($strings as $string)
  {
     echo preg_replace('/(low)? ?(\b[0-9]{0,3}\b) (piece minimum)/i',' Low Minumum',$string);
     echo '<br>';
  }

出力は次のとおりです。

Low Minimum
Low Minumum
Low Minumum
Low Minumum
Low Minumum
Low Minumum
This item is offered with a 1000 Low Minumum
Place your order now. This item has a Low Minumum
Place your order now. This item has a Low Minumum

ここに私の望ましい出力があります:

Low Minimum
Low Minumum
Low Minumum
Low Minumum
Low Minumum
Low Minumum
This item is offered with a 1000 piece minimum
Place your order now. This item has a Low Minumum
Place your order now. This item has a Low Minumum

私を台無しにするのは4桁の数字です。したがって、「最小ピース」は、その前にあるものの一部も一致する場合にのみ一致する必要があります。どうやってこれを書くのですか?

4

1 に答える 1

1

目的の出力を得るには、小さな間違いを変更する必要があります。

それ以外の..

[0-9]{0,3}

そのはず..

[0-9]{1,3}
于 2013-10-02T18:25:25.003 に答える