Đây thực sự là một vấn đề xấu. URL có thể chứa dấu chấm (và kết thúc bằng), do đó khó có thể xác định nơi URL thực sự kết thúc, khi URL được nhúng trong văn bản thông thường. Ví dụ:
http://example.com/.
là URL hợp lệ, nhưng nó có thể chỉ là một cách dễ dàng là sự kết thúc của một câu:
I buy all my witty T-shirts from http://example.com/.
Bạn không thể chỉ đơn giản là phân tích cho đến một không gian được tìm thấy, bởi vì khi đó bạn sẽ giữ khoảng thời gian như một phần của URL. Bạn cũng không thể phân tích cú pháp đơn giản cho đến khi một khoảng thời gian hoặc một khoảng trắng được tìm thấy, bởi vì các khoảng thời gian là cực kỳ phổ biến trong các URL.
Có, regex là bạn của bạn ở đây, nhưng việc xây dựng regex thích hợp là phần khó khăn.
Kiểm tra điều này: Expanding URLs with Regex in .NET.
Nguồn
2008-08-28 16:05:06
Đối với ứng dụng này, bạn nên tìm một giải pháp khớp chính xác với cách thức Twitter tự phân tích các URL - một biểu thức chính quy có thể hoạt động; chỉ cần đảm bảo sử dụng cùng một điều kiện cho phù hợp với kết thúc của URL (so với những thứ như dấu chấm và dấu ngoặc đơn bên phải) như Twitter. –