2016-04-27 5 views
2

私は期待期待jslint ']' との代わりに見て '/'

jslint ']' のような例外を取得し、代わりに '/' を見ています。

function returnFilePath(fullPath) { 
    var objRE = new RegExp(/([^//]+)\\/); 
    var stringPath = objRE.exec(fullPath); 
    if (stringPath == null) { 
     return null; 
    } 
    else { 
     return stringPath[1]; 
    } 
} 

ないこのための解決策を見つけることができます。

+2

正規表現は2番目の/文字の早い方で終了しています。 \ –

+0

@ cricket_007でそれをエスケープする必要があります。早く終了しない文字セット '/'には特別なプロパティ/意味はありません。 – zerkms

+0

@zerkms正規表現を/文字で囲む必要はありませんか?たとえば、 '/ [A-Z] /'? –

答えて

2

あなたの正規表現は無効であるようだ。 enter image description here (からのスクリーンショット:https://regex101.com/

何パターンあなたが一致しようとしていますか? は、それは次のようになります。

([^\/]+)\\ 
+1

"は無効です" ---あなたは何を考えているのですか?構文的には正しいと確信してください – zerkms

+3

@Bruno Garciaブラウザコンソールで試してみてください。regex101.comのデフォルトはpcre(無効と表示されます)ですが、JavaScriptに切り替えると有効です。 – reduckted

3

私は(ルールが実際にあるかについてのドキュメントの多くがあるようには思えない)、このエラーフラグを立てるされ、正確なルールのわからないんだけど、あなたが得ることができます

var objRE = new RegExp(/([^\/\/]+)\\/); 
関連する問題