- ベストアンサー
正規表現
/hoge / /hogehoge/hoge/ho などの文字列があります。 初めのスラッシュから次のスラッシュまでの文字を取得するにはどうすればいいのでしょうか? 上の例ですと 初めの文字列は hoge 2番目:null 3番目:hogehoge よろしくお願いいたします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
こんな感じ良いのかな? php <?php $dir[]='/hoge'; $dir[]='/'; $dir[]='/hogehoge/hoge/ho'; $result=preg_replace('|^/([^/]*).*|',"$1",$dir); print_r($result); ?>
その他の回答 (2)
- yambejp
- ベストアンサー率51% (3827/7415)
命題と結果提示がちがうので補足が必要ですね >初めのスラッシュから次のスラッシュまでの文字を取得 であれば1番目と2番目はヒットしません 初めのスラッシュから次のスラッシュもしくは行末までの文字を取得 ということでしょうか? また、2番目はnullをヒットするのでしょうか、それともヒットしないでよいのでしょうか?
- exists
- ベストアンサー率62% (27/43)
こんにちは いろいろ方法はあると思いますが、一例として explode関数で、ディレクトリセパレータを区切り文字とした配列を作ります。 配列の中身は、var_dump($result)で確認できます。 その中から、必要な部分を、表示します。 ※2番目は、nullにはなりません。注意してください。 <?php $data = '/ddd/ccc'; $result = explode('/',$data); echo $result[1]; //var_dump($result); ?> ※ 以下は、OKと表示されます。 if(null == ""){ echo "OK"; } 以下は、OKは表示されません if(null === ""){ echo "OK"; }