preg_replace ステートメントを機能させようとしていますが、いくつかのバリエーションを除いて、ほとんどの場合これが行われます。
<?php
$string = "10vdc";
if (preg_match("/(^[0-9]+[0-9])+[v | a]/i",$string)) {
echo "yes!";
$string = preg_replace("/^[0-9]+[0-9]/","$0 ",$string);
}
if (preg_match("/[v | a][ac | dc]/i",$string)) {
echo "<br>yes2!";
$string = preg_replace("/([\d | \s][v | a])([ac|dc])/i","$1 $2",$string);
}
echo "<br>";
echo $string;
?>
文字列が 10vdc、10 vdc、10vac、または 10 vac の場合、正規表現は機能します (それぞれ 10 v dc または 10 v ac を出力する必要があります) が、文字列が 10adc、10 adc、10aac、または 10 aac の場合、エコーが返されます。それぞれ 10 adc または 10 aac のみです。私は午前中ずっとチュートリアルに取り組んでいて、これのコツをつかみ始めていますが、これは私を困惑させています!
試してみたい場合は、$string の値を変更するだけです。
助けてくれてありがとう!あなたはすべて最高です。