JavaScript'te çalıştırıldığında metindeki bir URL ile kabaca eşleşen en kısa normal ifadeyi oluşturun
Misal:
"some text exampley.com".match(/your regular expression goes here/);
Normal ifadenin
- http ve https için geçerli tüm URL'leri yakalayın .
- aslında geçerli URL'ler olmayan URL görünümlü dizelerle eşleşmekten endişe etmeyin
super.awesome/cool - JavaScript normal ifadesi olarak çalıştırıldığında geçerli olma
Test kriterleri:
Eşleşme:
- 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
Eşleşmiyor:
- misal
- Süper havalı
- Günaydın
- yapabilirim
- Merhaba.
İşte biraz açıklığa kavuşturabilecek bir test http://jsfiddle.net/MikeGrace/gsJyr/
Açıklık eksikliği için özür dilerim, eşleşen URL'lerin ne kadar korkunç olduğunu fark etmemiştim.
\wher şey için basitçe kullanabiliyorum Farklı URL bileşenleri için geri başvurular mı bekliyorsunuz?
/:/olduğu gibi, sadece normal ifade olarak kullanabilir ve geçerli URI'lerle eşleşebilir ve »Eşleşmiyor« listesindeki tüm örneklerinizle eşleşmeyebilirim. Bu rotaya gittiğiniz sürece sadece soru şudur: Örnek dizelerden hiçbiriyle eşleşmeyecek, ancak yine de tüm URI'leri yakalayacak en kısa düzenli ifade nedir.