JavaScriptで実行したときにテキスト内のURLにほぼ一致する最短の正規表現を作成します
例:
"some text exampley.com".match(/your regular expression goes here/);
正規表現は
- httpおよびhttps用の有効なURLをすべてキャプチャします。
- 実際に有効なURLではないURLのような文字列に一致しないことを心配しないでください
super.awesome/cool
- JavaScript正規表現として実行するときに有効である
テスト基準:
一致:
- 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
合わない:
- 例
- 超クール
- おはようございます
- できます
- こんにちは。
http://jsfiddle.net/MikeGrace/gsJyr/を少し明確にするのに役立つテストを次に示します。
明快さの欠如をおizeびします。一致するURLがどれほどひどいものであるかを理解していませんでした。
\w
にすべてに使用できるため、さまざまなURLコンポーネントの後方参照を期待していますか?
/:/
、正規表現として使用し、有効なURIと一致するだけで、「一致しない」リストにあるすべての例と一致するわけではありません。あなたがそのルートを進んでいる限り、それは単に質問です:サンプル文字列のいずれにも一致しないが、それでもすべてのURIをキャッチする最も短い正規表現は何ですか。