Thay thế "\\" bằng "\" trong C#

Mình muốn chuyển “\” về “” trong một string thì phải làm thế nào ạ?.
Đây là một bài viết trên stackoverflow nhưng không hiểu sao mình làm vậy mà vẫn không được.
Hóng cao nhân chỉ giáo.


bạn thử in ra chưa. Xem trên debug thì \ sẽ thành \\

1 Like

in thì nó ra '" bạn à, cái mình cần là nó chuyển về “” ngày trong debug để xử lý bước tiếp theo :(:disappointed_relieved::disappointed_relieved::disappointed_relieved:

Cái bạn in ra mới đúng là dữ liệu mà bạn nhận được và xử lý nhé. Giá trị bạn nhìn trong debugger chỉ là để inspection thôi. Trong debugger thì sẽ chứa cả escape char . Bạn tìm hiểu về mấy escape char là hiểu

2 Likes

Bạn cần dùng ký tự “@” và “\” cho đúng cách

2 Likes

@ là bạn đang xài raw string rồi ko cần phải escape nữa đâu

3 Likes

Đọc bài viết này để hiểu thêm nhé https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/tokens/verbatim
(Mình phải nhìn nhận rằng Microsoft đang có xu hướng làm C# nói riêng và Dotnet nói chung ở ngày nay trở nên phức tạp lên và gần như phức tạp hệt như C++ vậy, tức là có cực kỳ nhiều tính năng và cú pháp)

2 Likes

Dấu \ trong nhiều ngôn ngữ là ký hiệu hỗ trợ đánh dấu ký tự đặc biệt. Như:
\0, \t, \n, \r…
Nên để sử dụng nó như một ký tự thông thường thì them một \ nữa đi kèm thành “\\” để hiểu tương đương với ký tự \.

Trong C#, có thể sử dung @ ở đầu một string thì không cần sử dung “\”.
Tuy nhiên cái việc replace “\” thành “” như bạn đang làm chả giải quyết được cái vấn đề gì. Bạn đang có ý tưởng gì đó hay gặp vấn đề gì với “\” ???

2 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?