URL regex aprobada por regex buddy pero fallida por Dart

Tengo la siguiente expresión regular en JavaScript regex

(https?|ftp)://([-A-Z0-9.]+)(/[-A-Z0-9+&@#/%=~_|!:,.;]*)?(\?[A-Z0-9+&@#/%=~_|!:‌​,.;]*)?

Intenta validar y vaciar el espacio / s o una URL.

Sin embargo, cuando intento usarlo en DartRegExp

que usa una expresión regular de sabor Perle, no valida.

Cualquier ayuda es apreciada.

Respuestas a la pregunta(1)

Su respuesta a la pregunta