有効な文字列を修正する正規表現の作成に問題があります。
文字列の形式は次のとおりです。任意の英数字が 3 ~ 5 回続き、その後にさらに文字がある場合はカンマが続き、それ以外の場合は文字列の末尾になります。
文字列の例: A401、CR56、4U9Y、MO16、ECZGB、A7DC、9LN5、D52PU、UT95、YBPB0、2JWA、AAMW、KVG、6V8W、FWE
TRIR、J107、Q9X、FMFZ、VDAS、557、X7A、DRPB、S97O、8U62B、IN3I、H8MC、WS4C、U04KQ、X05O。
いくつかのさまざまな表現を試しましたが、無効なエントリがある場合に一致するように見えるものはありません。文字列を分解して配列をループできることはわかっていますが、これを 1 つの式だけで実行しようとすると、かなり簡単に思えますが、よくわかりません。
パターン例:
echo preg_match("/^([A-Z0-9]{3,5})[,|$]{1,}/",$str);
echo preg_match("/((?<=[^|,])([A-Z0-9]{3,5}){1}(?=[,|$])){1,}/",$str);
それらのさまざまなバリエーションがありますが、勝利パターンを見つけることができません。すべて役に立ちます。
乾杯、サイ