suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Warum funktioniert dieser reguläre Ausdruck in JavaScript nicht? /(?i)-StringA$|-StringB$/

Diese Regex im Generator erstellt und alles funktioniert wie erwartet. Ich habe versucht, einige Zeichenfolgen in meiner App zu bereinigen, und die App meldete, sie sei ungültig.

Die Aussage lautet wie folgt:

const reg = /(?i)-TeamMember$|-TeamLead$/;
testString = testString.replace(reg, "");

Der Versuch, die App auszuführen, gibt die folgende Fehlermeldung aus:

模块解析失败:无效的正则表达式:/(?i)-StringA$|-StringB$/: 无效的分组(199:21)
文件已使用以下加载器进行处理:
 * ./node_modules/@angular-devkit/build-angular/src/babel/webpack-loader.js
 * ./node_modules/@ngtools/webpack/src/ivy/index.js
您可能需要额外的加载器来处理这些加载器的结果。

Habe es im Generator versucht und alles funktioniert wie erwartet. Das Ziel besteht darin, das Suffix aus der Zeichenfolge zu entfernen, wenn es mit einer der bereitgestellten Zeichenfolgen übereinstimmt, und die Groß-/Kleinschreibung zu ignorieren.

P粉314915922P粉314915922498 Tage vor683

Antworte allen(1)Ich werde antworten

  • P粉562845941

    P粉5628459412023-09-11 09:02:52

    JavaScript没有内置的不区分大小写的行内标志。相反,您应该使用不区分大小写的标志/i

    const reg = /-TeamMember$|-TeamLead$/i;
    testString = testString.replace(reg, "");

    您可以在这里阅读更多信息:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp/ignoreCase

    Antwort
    0
  • StornierenAntwort