私はまだ preg_match パターンに苦労しています。次の文字列のセットが配列に格納されています。
$comics = array("ABSOLUTION RUBICON #4 (MR) $3.99","ABSOLUTION RUBICON #4 FINAL JUSTICE CVR (MR) $3.99","ABSOLUTION RUBICON #4 HAPPY KITTY PREMIUM CVR (MR) $9.99", "ABSOLUTION RUBICON #4 WRAP CVR (MR) $3.99","SONIC THE HEDGEHOG #253 REG CVR $2.99");
ABSOLUTION RUBICON #4 (MR) $3.99
ABSOLUTION RUBICON #4 FINAL JUSTICE CVR (MR) $3.99
ABSOLUTION RUBICON #4 HAPPY KITTY PREMIUM CVR (MR) $9.99
ABSOLUTION RUBICON #4 WRAP CVR (MR) $3.99
SONIC THE HEDGEHOG #253 REG CVR $2.99
最終的なリストが次のようになるように preg_match を実行したい
ABSOLUTION RUBICON #4 (MR) $3.99
SONIC THE HEDGEHOG #253 REG CVR $2.99
cleanComics = array("ABSOLUTION RUBICON #4 (MR) $3.99","SONIC THE HEDGEHOG #253 REG CVR $2.99");
文脈を説明すると、これらはコミック タイトルであり、変種の表紙を削除したいのですが、たまに出版社が REG CVR を挿入するので、これを保持する必要があります。
これらのパターンは一定のままです。
- コミック タイトルは常にすべて大文字で、文字列の先頭にありますが、文字と数字が混在しています。
- 号番号はコミック タイトルに続き、「#」記号で始まります COMIC TITLE #000
- 最後の文字セットが価格になり、価格の先頭として常に「$」が使用されます。
- 「()」内に表示される項目は常に存在するとは限りません (これらは削除できますが、簡単にする場合は必須ではありません)
- バリアント カバーの名前はさまざまであり、数字と文字を混在させることができますが、文字 CVR は常にバリアント カバーの名前の後に続きます。
問題番号の最後の桁と $ 記号が区切り文字になる可能性があると考えていますが、これを実行して REG CVR ケースを除外する一致パターンを構成する方法がわかりません。
これはPHPで行われることに言及する必要があります。
ありがとうケビン