2012-03-11 8 views
6

Vì vậy, với kết hợp python regex, chúng tôi có ý nghĩa của \ w và những người khác bị ảnh hưởng bởi lá cờ re.LOCALE:Làm thế nào để tìm ra các ký tự được định nghĩa là chữ và số cho một miền địa phương cho

\ w

Khi cờ LOCALE và UNICODE không được chỉ định, khớp với bất kỳ ký tự chữ và số nào và dấu gạch dưới; điều này tương đương với số đặt [a-zA-Z0-9_]. Với LOCALE, nó sẽ khớp với tập hợp [0-9_] cộng với bất kỳ ký tự nào được định nghĩa là chữ và số cho miền địa phương hiện tại.

Vì vậy, chúng tôi muốn tìm hiểu những gì nhân vật được định nghĩa là chữ và số cho một miền địa phương được - nói rằng chúng ta đã làm 'locale -a' và chúng tôi có một danh sách ngôn ngữ, và muốn tìm các thông tin cho một trong những liệt kê miền địa phương trên hệ thống. Bất kỳ phương pháp nào để tìm thông tin một cách nhanh chóng: một đoạn mã python hoặc một lớp lót, lệnh shell hoặc có thể là tài liệu tham khảo ở đâu đó.

Trả lời

5

Sử dụng chuỗi ký tự.

Ví dụ:

>>> import locale 
>>> import string 
>>> locale.setlocale(locale.LC_ALL, 'en_US.UTF-8') 
'en_US.UTF-8' 
>>> string.letters 
'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz' 
>>> locale.setlocale(locale.LC_ALL, 'de_DE') 
'de_DE' 
>>> string.letters 
'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\xaa\xb5\xba\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xeb\xec\xed\xee\xef\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff' 
>>> 
+0

Cảm ơn. Hoạt động tốt. –