thoát một dấu chấm đơn với dấu gạch chéo kép - awk


10

Cuốn sách "lập trình awk hiệu quả" có một ví dụ về Chia tách trường. đây là ví dụ:

Nếu bạn muốn các trường được phân tách bằng một khoảng thời gian theo nghĩa đen theo sau bởi bất kỳ ký tự đơn lẻ nào, hãy sử dụng ‘FS = "\\.."’.

Tại sao nó là dấu gạch chéo kép? không nên nó được \..?

Câu trả lời:


14

Cả chuỗi và biểu thức chính quy trong awk đều chia sẻ nhiều dấu gạch chéo ngược giống nhau, bao gồm cả \\một chuỗi \. Vì FSlà một giá trị chuỗi được diễn giải bên trong như một biểu thức chính quy, những lần thoát được chia sẻ đó phải được thoát hai lần. Do đó, \\trong một chuỗi trở thành \thời gian nó được hiểu là một biểu thức chính quy.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.