Câu trả lời:
Đảm bảo "Sử dụng: Biểu thức chính quy" được chọn trong hộp thoại Tìm và thay thế:
Lưu ý rằng đối với Visual Studio 2010, tính năng này không hoạt động trong tiện ích mở rộng "Tìm nhanh" của Công cụ năng suất Visual Studio (kể từ bản cập nhật tháng 7 năm 2011); thay vào đó, bạn sẽ cần sử dụng hộp thoại Tìm và Thay thế đầy đủ (sử dụng Ctrl + Shift + H hoặc Chỉnh sửa -> Tìm và Thay thế -> Thay thế trong Tệp) và thay đổi phạm vi thành "Tài liệu hiện tại".
\)
khi các biểu thức thông thường được bật ...
?
vật cần được thoát trong Regex vì nó biểu thị rằng phần tử trước đó là tùy chọn. Do đó, văn bản "Tìm gì" chính xác ~~\?
, với dấu chấm hỏi được thoát bằng dấu gạch chéo ngược. Câu trả lời bạn đưa ra hoạt động trên văn bản mẫu vì nó sẽ tham lam tìm dấu ngã thứ hai và tiêu thụ nó, tuy nhiên nếu một dấu ngã đơn cũng tồn tại trong văn bản ở bất cứ đâu, nó cũng sẽ được thay thế bằng một dòng mới.
Bạn cũng có thể thử \x0d\x0a
trong hộp "Thay thế bằng" với hộp "Sử dụng Biểu thức thông thường" được chọn để nhận trả lại vận chuyển + nguồn cấp dữ liệu bằng cách sử dụng / Thay thế Visual Studio. Sử dụng \n
(nguồn cấp dữ liệu) giống như\x0a
Nếu bạn đặt cờ "Sử dụng biểu thức chính quy" thì \ n sẽ được dịch. Nhưng hãy nhớ rằng bạn sẽ phải sửa đổi cụm từ tìm kiếm của mình để trở nên thân thiện. Trong trường hợp của bạn, nó nên được thoát như thế này "\ ~ \ ~ \?" (không có báo giá).
Nếu bạn muốn tránh những rắc rối khi thoát các ký tự đặc biệt trong chuỗi tìm kiếm và thay thế của mình khi sử dụng các biểu thức thông thường, hãy thực hiện các bước sau:
Lưu ý rằng ngay cả khi bạn muốn chỉnh thủ công khớp cho lần tìm kiếm đầu tiên và thay thế, bạn có thể sử dụng "thay thế tất cả" một cách an toàn cho ba bước cuối cùng.
Ví dụ: nếu bạn muốn thay thế điều này:
public IFoo SomeField { get { return this.SomeField; } }
với:
public IFoo Foo { get { return this.MyFoo; } }
public IBar Bar { get { return this.MyBar; } }
Bạn sẽ làm những thay thế sau:
public IFoo SomeField { get { return this.SomeField; } }
→ XOXOXOXO
(regex tắt ).XOXOXOXO
→ XOXOXOXO\nHUHUHUHU
(regex trên ).XOXOXOXO
→ public IFoo Foo { get { return this.MyFoo; } }
(regex tắt ).HUHUHUHU
→ public IFoo Bar { get { return this.MyBar; } }
(regex tắt ).Bạn có thể sử dụng Multiline Search và Thay thế trong macro Visual Studio cung cấp GUI đẹp cho tác vụ.