CHANGELOG
20/01/2017
UA chuỗi update: 141 khớp, 0 phần phù hợp, và 797 dòng không hợp lệ
"Mobile Safari 1.1.3 (iPhone U; CPU như Mac OS X; en)" được coi là vô hiệu ngay cả khi nó đề cập đến iPhone. Trên thực tế một dấu chấm phẩy là mất tích sau khi hạn iPhone
đó là đáng ngờ.
Safari 8 + không xuất hiện nhưng trên UserAgentString.com
điều kiện tiên quyết
- Các regex sau là chung chung.
- Nó sẽ MATC h Chuỗi tác nhân người dùng Safari (SUAS) chạy trên thiết bị di động (xem danh sách thiết bị được hỗ trợ bên dưới).
- Regex dựa trên SUAS đã biết theo UserAgentString.com kể từ 20/01/2017.
REGEX
^(?:(?:(?:Mozilla/\d\.\d\s*\()+|Mobile\s*Safari\s*\d+(?:\.\d+)+\s*)(?:iPhone(?:\s+Simulator)?|iPad|iPod);\s*(?:U;\s*)?(?:[a-z]+(?:-[a-z]+)?;\s*)?CPU\s*(?:iPhone\s*)?(?:OS\s*\d+_\d+(?:_\d+)?\s*)?(?:like|comme)\s*Mac\s*O?S?\s*X(?:;\s*[a-z]+(?:-[a-z]+)?)?\)\s*)?(?:AppleWebKit/\d+(?:\.\d+(?:\.\d+)?|\s*\+)?\s*)?(?:\(KHTML,\s*(?:like|comme)\s*Gecko\s*\)\s*)?(?:(?:Version|CriOS)/\d+(?:\.\d+)+\s*)?(?:Mobile/\w+\s*)?(?:Safari/\d+(?:\.\d+)*.*)?$
HỖ TRỢ THIẾT BỊ DANH
- iPhone
- iPhone Simulator
- iPad
- iPod
GIẢI THÍCH/Customization
dòng trước bởi một C có thể được tùy chỉnh.
1. ^(?:(?:(?:Mozilla/\d\.\d\s*\()+|Mobile\s*Safari\s*\d+(?:\.\d+)+\s*)
C 2. (?:iPhone(?:\s+Simulator)?|iPad|iPod);\s*
3. (?:U;\s*)?
4. (?:[a-z]+(?:-[a-z]+)?;\s*)?
5. CPU\s*
6. (?:iPhone\s*)?
C 7. (?:OS\s*\d+_\d+(?:_\d+)?\s*)?
C 8. (?:like|comme)\s*Mac\s*O?S?\s*X
9. (?:;\s*[a-z]+(?:-[a-z]+)?)?
10. \)\s*)?
11. (?:AppleWebKit/\d+(?:\.\d+(?:\.\d+)?|\s*\+)?\s*)?
C 12. (?:\(KHTML,\s*(?:like|comme)\s*Gecko\s*\)\s*)?
C 13. (?:(?:Version|CriOS)/\d+(?:\.\d+)+\s*)?
14. (?:Mobile/\w+\s*)?
15. (?:Safari/\d+(?:\.\d+)*.*)?$
chuỗi dòng 1. UA có thể khác nhau vì thế dòng này được giới thiệu cho việc chấp nhận chuỗi UA càng nhiều càng tốt.
dòng 2. Bạn có thể chỉ định ở đây danh sách các thiết bị được chấp nhận được phân tách bằng đường ống.
(...)
dòng 7. Phiên bản được chỉ định tại đây. Thay đổi dòng này nếu bạn muốn có một phiên bản đặc biệt. Đừng quên cập nhật dòng 13. Ví dụ: kết hợp iOS 5.x.y sử dụng (?:OS\s*5_\d+_\d+\s*)?
.
dòng 8. Một số chuỗi tác nhân người dùng được dịch. Từ like
có thể được dịch sang tiếng nước ngoài. Regexp hiện hỗ trợ English
và French
. Thích ứng với dòng này nếu bạn gặp phải các ngôn ngữ khác. Đừng quên cập nhật dòng 12.
(...)
dòng 12. Xem dòng 8.
dòng 13. Xem dòng 7. Ví dụ, phù hợp với iOS 5.x.y sử dụng (?:Version/5\.\d+\.\d+)?\s*)?
.
Bạn đang tìm kiếm bất kỳ đại lý người dùng iOS 6 tùy ý nào hay chỉ Safari? – BoltClock
Lý tưởng nhất là tất cả các tác nhân người dùng có thể nhưng vì Safari là phổ biến nhất nên tôi nghĩ đó có thể là điểm khởi đầu :) – dasheddot
Chỉ cần chỉ ra, các tác nhân người dùng có thể dễ dàng giả mạo. – Arran