質問: ああ,いいA,ううB,ええC,おおC,かかA、さくら,ももA,りんごB,ぶどうC というデータがあるとします。 これを「さくら」から後ろのデータ毎に整理したいです。 「さくら」の後にはなにもアルファベットが付いていないので、「ああ」が対応します。 「もも」はAで終わっているので、「いい」と「かか」が対応します。 「りんご」はBで終わっているので、「うう」が対応します。 各アルファベットは削除して取り出したいです。 結果下のようになります。 さくら、ああ もも、いい、かか りんご、うう ぶどう、ええ、おお このようなデータにするためにperlで書く正規表現のヒントをください。 そのものずばりでなくてもヒントでもOKです。 どうぞよろしくお願いいたします。
回答: 前半の名前の部分にアルファベットを含むものが来ないという条件でですが、以下の手順で十分ではないでしょうか? 1.「,」で要素を区切る。 2.各要素について、以下を繰り返す 3.アルファベットで終わるかどうかを正規表現で確認 4.3でマッチした場合には、そのアルファベットのデータとして登録 5.3でマッチしなかった場合には、アルファベット無しのデータとして登録 手元ですぐにPerlを動作確認できる環境がなかったので、PHPのコードになりますが、次のような感じで動作すると思います。 ``` ``` 何かの参考になれば。