Tôi đang sử dụng số preg_split của php để phân tách một chuỗi dựa trên dấu chấm phẩy, nhưng tôi cần nó để chỉ phân tách trên dấu chấm phẩy không thoát.Regex để tách trên tất cả các dấu chấm phẩy không thoát hình
<?
$str = "abc;def\\;abc;def";
$arr = preg_split("/;/", $str);
print_r($arr);
?>
Tạo:
Array
(
[0] => abc
[1] => def\
[2] => abc
[3] => def
)
Khi tôi muốn nó để sản xuất:
Array
(
[0] => abc
[1] => def\;abc
[2] => def
)
Tôi đã thử "/(^\\)?;/"
hoặc "/[^\\]?;/"
nhưng cả hai đều tạo ra lỗi. Bất kỳ ý tưởng?
@Corey, tại sao dấu chấm phẩy được thoát nếu bạn không muốn nó trong kết quả cuối cùng của mình? –
@Doug Typo, thêm dấu chấm phẩy vào đầu ra cuối cùng –
Có thể thoát được thoát không? Nói cách khác, một chuỗi ký tự có dạng như sau: '" abc; def \\\; abc; def "' (được chia thành: '[abc, def \\, abc, def'])? –