出産前後の痔にはご注意!

文字列中の「,」で分割をしたいのですが
「\,」では分割したくありません
このような場合、どのような正規表現をかけばいいのでしょうか?

<?php
$str = "asd,fgh,qwge\,zxc";

$ary_ary = split("[^\],",$str);

print_r($ary_ary);
?>

------結果------
Array
(
[0] => as
[1] => fg
[2] => qwge\,zxc
)

いろいろ考えてみましたが
上のようにうまくいきませんでした

ご教示おねがいします

このQ&Aに関連する最新のQ&A

A 回答 (2件)

$ary_ary = preg_split('/(?<!\\\\),/',$str);

    • good
    • 0
この回答へのお礼

ありがとございます!
無事解決することができました
・・・しらない正規表現でしたのでもっと勉強してきます^^;

お礼日時:2005/12/20 14:13

<?php


$str = "asd,fgh,qwge\,zxc";

$ary_ary = explode(",",$str);

print_r($ary_ary);
?>

split関数は正規表現のパターンで分割しますが
explode関数は指定の区切り文字で分割します。ご質問の内容であれば複数の区切り文字を使うのではなくコンマのみでの区切りということですので、explode関数を使うのが手っ取り早いと思います。

この回答への補足

ちょっと説明が足りなかったようです

------希望結果------
Array
(
[0] => asd
[1] => fgh
[2] => qwge\,zxc
)

こうなる方法の質問でした

補足日時:2005/12/20 14:14
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング