2017-11-14 34 views
0

リンクまたはURLが含まれているかどうかを確認するこの正規表現を私は持っています(i.e. https://eslint.org/docs/rules/no-useless-escape)。この正規表現/(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/igを使用して、Unnecessary escape character: \/ no-useless-escapeの反応でテストケースを実行しているときに遭遇してエラーが発生しました。テストケースを進めて正規表現を使用するために、このeslint-errorを無効にする方法。不要なエスケープ文字を無効にする:/no-useless-escape

何か助けてもらえますか?

答えて

2

\/はと[-A-Z0-9+&@#\/%=~_|]です(:\/\/のものではありません)。ほとんどの文字は、文字クラス内でエスケープする必要はありません(角括弧)。これは同等でなければなりません:/(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#/%?=~_|!:,.;]*[-A-Z0-9+&@#/%=~_|])/igだから、 は、詳細はhttps://www.regular-expressions.info/charclass.htmlを参照してください、しかし、関連部分:ほとんどの正規表現のフレーバーで

、文字クラスの内側のみ特殊文字やメタ文字 は、]バックスラッシュ閉じ括弧です\ 、 キャレット^、ハイフン - 。通常のメタ文字は、文字クラス内に通常の 文字です。 でエスケープする必要はありません。星やプラスを検索するには、[+ *]を使用します。文字 クラス内の正規メタキャラクタからエスケープすると正規表現は になりますが、読みやすさが大幅に低下します。

+0

ご協力いただきありがとうございます。 – Rherroral

関連する問題