Tạo biểu thức chính quy ngắn nhất gần như khớp với URL trong văn bản khi chạy bằng JavaScript
Thí dụ:
"some text exampley.com".match(/your regular expression goes here/);
Biểu thức chính quy cần phải
- nắm bắt tất cả các URL hợp lệ dành cho http và https.
- đừng lo lắng về việc không khớp với các chuỗi tìm kiếm URL không thực sự là URL hợp lệ như
super.awesome/cool
- có giá trị khi chạy dưới dạng regex JavaScript
Tiêu chí kiểm tra:
Trận đấu:
- http://example.com
- http://example.com/
- http://example.com/super
- https://example.com/super
- example.com/super
- example.com
- example.com/su-per_duper/?add=yes&subtract=no
- example.com/archive/index.html
- twitter.com/#!/reply
- example.com/234ret2398oent/234nth
- codegolf.stackexchange.com/questions/464
- crazy.wow.really.example.com/?cat=nth%3E
- example-example.com
- example1.com
Không khớp:
- thí dụ
- siêu mát
- Buổi sáng tốt lành
- tôi có thể
- xin chào.
Đây là một bài kiểm tra có thể giúp làm rõ một chút http://jsfiddle.net/MikeGrace/gsJyr/
Tôi xin lỗi vì sự không rõ ràng, tôi đã không nhận ra các URL phù hợp khủng khiếp như thế nào.
\w
cho tất cả mọi thứ Bạn có mong đợi phản hồi cho các thành phần URL khác nhau không?
/:/
như biểu thức chính quy và khớp các URI hợp lệ và không khớp với tất cả các ví dụ của bạn trong danh sách »Không khớp«. Miễn là bạn đang đi theo lộ trình đó chỉ đơn giản là câu hỏi: Biểu thức chính quy ngắn nhất sẽ không khớp với bất kỳ chuỗi ví dụ nào nhưng vẫn bắt được tất cả các URI.