質問: "世田谷区世田谷11-222-333" ``` これを下記のように分割し、4つの変数または配列にしたいです。 世田谷区世田谷 11 222 333 半角数字や全角を識別したりする事は mb_strlen()、mb_strwidth()でできるかと思ったのですが、 それをtrimしたり、explodeして分ける事が難しいです。 特に使う関数や書き方にこだわりはありません。 わかる方教えてください!よろしくお願いいたします。
回答: 数字と数字以外、ハイフンの組み合わせが決まっているならこう ``` $address = "世田谷区世田谷11-222-333"; $pattern="/([^\d]+)(\d+)-(\d+)-(\d+)$/"; if(preg_match($pattern,$address,$match)){ array_shift($match); print_r($match); } ```