Tôi có một chuỗi mà tôi muốn chia nhỏ. Nhưng dấu phân tách được xác định trong thời gian chạy và vì vậy tôi cần chuyển nó thành một biến.Tại sao chia tách trên `|` (đường ống) không hoạt động như mong đợi?
Một cái gì đó như my @fields = split(/$delimiter/,$string);
không hoạt động. Có suy nghĩ gì không?
Input:
abcd|efgh|23
Dự kiến Output:
abcd
efgh
23
đầu vào, đầu ra sản, và kết quả mong muốn của bạn sẽ là thông tin vô cùng hữu ích ... – Sean
Bạn không có một "dấu phân cách", bạn có một "dấu phân tách". "Dấu phân tách" đánh dấu các giới hạn, ví dụ: nó ở cả hai đầu, giống như dấu ngoặc kép. Một "dấu tách" đi vào giữa các phần tử, như "|" trong ví dụ đầu vào của bạn. – tadmc
có thể trùng lặp của [Làm cách nào để xử lý các ký tự đặc biệt trong một regex Perl?] (Http://stackoverflow.com/questions/576435/how-do-i-handle-special-characters-in-a-perl-regex) – daxim