suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Informationen zum Zusammenführen zweier regulärer Ausdrücke in Javascript

Wenn Sie Karma zum Testen der Codeabdeckung verwenden, entfernen Sie main.js

// require all src files except main.js for coverage.
// you can also change this to match only the subset of files that
// you want coverage for.
const srcContext = require.context('../../src', true, /^\.\/(?!main(\.js)?$)/)
srcContext.keys().forEach(srcContext)

Später habe ich einen Style-Ordner hinzugefügt, der SCSS-Dateien enthält, und ich möchte diesen Ordner auch entfernen

ss = ["./main.js","./style","./maaa.js","./style/sss.scss"]

ss.forEach(function(s){
console.log(s)
console.log(/^\.\/(?!main(\.js)?$)/.test(s))
console.log(/^\.\/(?!style.*)/.test(s))
console.log(/^\.\/(?!main(\.js)?$) | ^\.\/(?!style.*)/.test(s))
})
./main.js
false
true
false
./style
true
false
false
./maaa.js
true
true
false
./style/sss.scss
true
false
false

Die beiden separaten regulären Ausdrücke scheinen korrekt zu sein, aber die gemeinsame Verwendung von |. Es gibt wirklich keine Möglichkeit, bitte helfen Sie mir

世界只因有你世界只因有你2731 Tage vor759

Antworte allen(2)Ich werde antworten

  • 代言

    代言2017-06-12 09:30:45

    去掉中间多余的空格,并且把|两边都用括号括起来。

    Antwort
    0
  • 我想大声告诉你

    我想大声告诉你2017-06-12 09:30:45

    把正则表达式主体用 "[]"括起来就行
    比如:

    console.log(/^[\.\/(?!main(\.js)?$)|^\.\/(?!style.*)]/.test(s))

    Antwort
    0
  • StornierenAntwort