2016-12-04 11 views
2

私は必要なものすべて(ポートインクルード)に一致するこのURL正規表現を持っていますが、ダッシュは除きます。URL正規表現に一致するポートとダッシュ

正規表現:

/^(http|https):\/\/\w+(\.\w+)*(:[0-9]+)?\/?(\/[.\w]*)*$/ 

私はそれにダッシュを持っている可能性を含めたいが、私はそれを行うには達成できません。 私は\ wを - \ wに変更しようとしました。しかし、それは動作していないようです。

誰でもダッシュを含める方法を知っていますか?おかげさまで

+0

これまでに試した入力例と出力例を投稿してください。 – alindt

答えて

1

ダッシュは正規表現でエスケープする必要があります。\-、彼らはこの構文で表示されますので:[0-9]

+2

最初または最後の位置を除いて、文字クラス内でエスケープする必要があります。 –

2

あなたは(私はすべてのキャプチャグループを削除した)そのようなあなたのパターンを変更することができます。

/^https?:\/\/\w+(?:[.-]\w+)*(?::[0-9]+)?(?:\/\w+(?:[\/.-]\w+)*)?\/?$/ 

ただし、URLの構文が複雑になる可能性があることに注意してください。

関連する問題