※ ChatGPTを利用し、要約された質問です(原文:preg_splitがうまくいかないので、教えてく)
preg_splitで文字列を区切る方法についての質問
このQ&Aのポイント
preg_splitを使用して文字列を区切る方法について質問があります。現在、特定の文字列を使用して配列への分割を試みていますが、うまくいきません。
具体的には、月・日・曜日・時・分を区切り文字として使用し、文字列を分割したいです。しかし、いくつかのパターンでうまく区切ることができません。
質問には具体的なコードの例も記載されており、それぞれのパターンでの問題点が説明されています。
preg_splitがうまくいかないので、教えてく
9月18日(火)7時55分を配列へ格納したいです。
■1
$data = preg_split("/月|日|\(.\)|時|分/",$data);
とやると、うまく区分けされないところがあります。
Array
(
[0] => 9
[1] => 18
[2] => (火)7
[3] => 55
)
■2
preg_split("/月|日|\(*\)|時|分/",$data);とやると、
曜日のところが変な感じになります
Array
(
[0] => 9
[1] => 18
[2] => (火
[3] => 7
[4] => 55
)
■3
preg_split("/月|日|\(.*\)|時|分/",$data);
もしくは、
preg_split("/月|日|\(.*?\)|時|分/",$data);
とやると、曜日が取得できません
Array
(
[0] => 9
[1] => 18
[2] =>
[3] => 7
[4] => 55
)
■質問
・きれいに区切るには、どう書けば良いでしょうか?
・後、正規表現も勉強したいので、それぞれなんで駄目なのか教えてください
お礼
「回答&詳細な解説」ありがとうございました。 >そもそも曜日も取り出したいのですか?そうすると出発点である /月|日|\(.\)|時|分/ から間違ってます。 ご指摘ありがとうございます。前提から違ってたようで、失礼しました。 アドバイスを元に色々勉強していきたいと思いますー