2013-03-15 12 views
5

Có thể có một dòng mới khi bạn viết với "hiển thị" nhưNewline trong Scheme (vợt)

(display "exa \n mple") 

Nhưng vấn đề là không có bất kỳ mã để có một dòng mới trong chuỗi? Giống như:

"exa \n mple" 

mong đợi ->

exa 
mple 

Những gì tôi có:

exa \n mple 

tôi không thể tìm thấy bất kỳ thông tin trong vợt-tài liệu hoặc bất cứ nơi nào khác.

+1

Câu hỏi không rõ ràng, bạn cần gì nữa? –

+0

hmmm hoạt động trong trình thông dịch vợt trên thiết bị đầu cuối mac của tôi. Bạn đang đề cập đến thông dịch viên của Dr Racket hay trong thông dịch viên của vợt? –

+0

@JasonYeo, dr thông dịch viên vợt với phương ngữ vợt – Asqan

Trả lời

6

Nếu bạn cần một cách để thêm một dòng mới giữa chuỗi, thì điều này sẽ làm việc:

(define s (string-append "exa " "\n" " mple")) 
s 
=> "exa \n mple" 

(display s) 
=> exa 
    mple 

Trong đoạn trên, tôi đang sử dụng string-append cho dính lại với nhau hai chuỗi với một dòng mới ở giữa. Chuỗi kết quả s sẽ có một dòng mới ở giữa khi bạn sử dụng nó, ví dụ bằng cách hiển thị nó.

Rõ ràng nó sẽ hiển thị như "exa \n mple", bạn không thể mong đợi các chuỗi để nhảy từ một dòng vào khác trừ khi bạn hiển thị nó, in, hiển thị nó, hãy viết nó, vv

+0

Có nhưng khi bạn làm việc với chuỗi, "\ n" không hoạt động nữa – Asqan

+0

Ý của bạn là "nó không hoạt động nữa"? nó hoạt động tốt, thông báo rằng tôi đang sử dụng _two_ backslashes để thoát –

+0

Vì vậy, ý của bạn là: Nếu bạn nhập mã này: (string-append "bra" "\\ n" "va"), bạn lấy "va" dưới dòng "áo ngực"? Tôi đang sử dụng lược đồ với vợt phương ngữ và "\\ n" không bắt đầu dòng mới – Asqan

4

Something như:

(display "line\nhola") 

nên làm điều đó.

Không biết tại sao bạn cần bất kỳ thứ gì được đăng ở trên.