2010-03-24 35 views
6

cách tốt nhất để trích xuất 2 ký tự cuối cùng của chuỗi bằng cụm từ thông dụng là gì.cụm từ thông dụng: trích xuất 2 ký tự cuối cùng

Ví dụ, tôi muốn trích xuất mã nhà nước từ sau

"A_IL"

tôi muốn trích xuất IL như chuỗi ..

xin vui lòng cung cấp cho tôi mã C# trên làm thế nào để có được nó ..

string fullexpression = "A_IL"; 
string StateCode = some regular expression code.... 

nhờ

+3

Có lý do cụ thể nào bạn cần sử dụng regex thay vì thao tác chuỗi thông thường không? –

Trả lời

21

Sử dụng regex:

..$ 

Điều này sẽ trả về cung cấp hai ký tự bên cạnh neo cuối.

Vì bạn đang sử dụng C#, điều này sẽ đơn giản hơn và có lẽ nhanh hơn:

string fullexpression = "A_IL"; 
string StateCode = fullexpression.Substring(fullexpression.Length - 2); 
+1

Bạn thực sự không cần hàng đầu '. *' –

+0

Vâng, và tôi nhận ra rằng bạn không cần nhóm cho hầu hết các động cơ. –

+4

+1 để đề xuất chuỗi con. Sử dụng các công cụ thích hợp cho công việc. – Joel

3

Sử dụng /(..)$/, sau đó kéo nhóm 1 (.groups(1), $1, \1, vv).

+0

Quá phức tạp, hãy giữ nó đơn giản. – jpabluz

+3

Đừng nghĩ rằng nó gọi cho một downvote. –

+0

"Phức tạp" phụ thuộc vào định nghĩa của bạn về Đơn giản. Trong nhiều trường hợp, điều này đơn giản và thanh lịch hơn rất nhiều. Ví dụ, điều này có thể thay đổi một hoạt động 2-3 bước thành một phép chuyển đổi một bước. – zaTricky

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