2010-01-10 19 views
7

Tôi mới làm quen với biểu thức regex vì vậy xin lỗi nếu đây là một câu hỏi thực sự noob.Làm cách nào để kiểm tra xem biểu thức Regex có khớp với toàn bộ chuỗi trong C# không?

Tôi có biểu thức chính quy ... Điều tôi muốn làm là kiểm tra xem chuỗi có khớp với biểu thức chính quy toàn bộ không có biểu thức chính quy phù hợp với bất kỳ tập hợp con nào của chuỗi.

Ví dụ ...

Nếu biểu thức regex tôi đang tìm kiếm một trận đấu của \ s Một \ s *, nó sẽ trả về một trận đấu nếu chuỗi nó được so sánh nó với là "A" nhưng nếu nó so sánh với chuỗi "AB", nó sẽ không trả về kết quả khớp.

Mọi trợ giúp sẽ được đánh giá cao? Tôi viết mã bằng C#.

+1

Bạn có thể thử trình kiểm tra regex trực tuyến tại http://regexpal.com/ mẫu đơn giản nhất C# regex nên được kiểm tra chính xác. –

Trả lời

16

Bạn thường sử dụng khi kết thúc đầu cuối neo ^$ respecitvely:

^\s*A*\s*$ 

Hãy nhớ rằng, nếu bạn engine regex hỗ trợ nhiều dòng, điều này cũng có thể nắm bắt được chuỗi mà span nhiều dòng càng lâu là một trong những dòng phù hợp với regex (kể từ ^ sau đó neo sau bất kỳ dòng mới hoặc chuỗi bắt đầu và $ trước khi bất kỳ dòng mới hoặc kết thúc chuỗi). Nếu bạn chỉ chạy regex trên một dòng, thì đó không phải là vấn đề.

Nếu bạn muốn đảm bảo rằng một đa dòng đầu vào chỉ là một dòng duy nhất bao gồm mô hình, bạn có thể sử dụng \A\Z nếu được hỗ trợ - những nghĩa bắt đầu và kết thúc của chuỗi bất kể dòng mới.

+0

Cảm ơn bạn .. đó là nó. –

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