2012-06-13 39 views
18

Tôi muốn biết cách thể hiện ký tự khoảng trống trong C#. Tôi tìm thấy biểu diễn chuỗi rỗng string.Empty. Có bất cứ điều gì giống như đại diện cho một nhân vật khoảng trắng?Cách thể hiện chính xác ký tự khoảng trắng

Tôi muốn làm điều gì đó như thế này:

test.ToLower().Split(string.Whitespace) 
//test.ToLower().Split(Char.Whitespace) 
+1

nó sẽ không chỉ là một không gian duy nhất? (hoặc ascii equivilant?) – Limey

+1

Khoảng trắng là một tập hợp các ký tự. –

+0

Bản sao có thể có của [Cách tốt nhất để chỉ định khoảng trắng trong thao tác String.Split] (http://stackoverflow.com/questions/6111298/best-way-to-specify-whitespace-in-a-string-split-operation) – nevermind

Trả lời

17

Nhân vật khoảng trắng nào? Chuỗi rỗng khá rõ ràng - đó là một chuỗi gồm 0 ký tự. Tuy nhiên, " ", "\t""\n" là tất cả các chuỗi chứa một ký tự đơn được mô tả là khoảng trắng.

Nếu bạn chỉ là một không gian, hãy sử dụng một không gian. Nếu bạn có nghĩa là một số ký tự khoảng trống khác, có thể có một chuỗi thoát tùy chỉnh cho nó (ví dụ: "\t" cho tab) hoặc bạn có thể sử dụng chuỗi thoát Unicode ("\uxxxx"). Tôi sẽ không khuyến khích bạn bao gồm các ký tự không phải ASCII trong mã nguồn của bạn, đặc biệt là các khoảng trắng.

EDIT: Bây giờ bạn đã giải thích những gì bạn muốn làm (mà cần phải có được trong câu hỏi của bạn để bắt đầu) bạn muốn được tốt hơn bằng cách sử dụng Regex.Split với một biểu thức chính quy của \s đại diện cho khoảng trắng:

Regex regex = new Regex(@"\s"); 
string[] bits = regex.Split(text.ToLower()); 

Xem tài liệu Regex Character Classes để biết thêm thông tin về các lớp nhân vật khác.

+0

Xin chào, tôi đang tham khảo bài đăng này http://stackoverflow.com/ câu hỏi/6111298/best-way-to-specify-khoảng trắng-trong-một-chuỗi-chia-hoạt động. Như tôi đã có cùng một vấn đề. Tôi có tệp csv trong đó không gian không khớp với '' trong chức năng chia tách. Tôi muốn đặt string.Whitespace trong hàm nếu có. – Luke101

+0

@ Luke101: Nó sẽ hữu ích nếu bạn nói tất cả điều này để bắt đầu. Xem bản chỉnh sửa của tôi - về cơ bản bạn nên sử dụng cụm từ thông dụng. –

+0

Hoàn hảo, chính xác những gì tôi cần. Xin lỗi vì sự hiểu lầm. Sẽ làm rõ bài đăng trong tương lai. – Luke101

4

Không, đó không phải là hằng số như vậy.

1

Ký tự khoảng trắng nào? Phổ biến nhất là không gian bình thường, nằm giữa mỗi từ trong câu của tôi. Đây chỉ là " ".

+0

Tôi đã sử dụng 'SPACE' thay vì "SPACE" để biểu thị ký tự khoảng trắng trong C# – Zeeshanef

+4

'''' là một 'char',' "" 'là một chuỗi'. Trong ngữ cảnh 'Tách',' char' có lẽ là những gì bạn muốn sử dụng. Vì vậy, yeah, bạn đang phải –

+0

Cảm ơn ... bạn cần chỉnh sửa câu trả lời của bạn và thêm nhận xét này làm câu trả lời. Bây giờ có nhiều upvotes bình luận của bạn hơn câu trả lời của bạn. – Equiman

1

Sử dụng biểu thức thông thường, bạn có thể đại diện cho bất kỳ ký tự khoảng trắng với metacharater "\ s"

MSDN Reference

Các vấn đề liên quan