Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 正则表达式排除并包含一些单词_Regex - Fatal编程技术网

Regex 正则表达式排除并包含一些单词

Regex 正则表达式排除并包含一些单词,regex,Regex,我有多个文件具有以下类型的导入: <link rel="stylesheet" href="../vendor/pickadate/lib/themes/default.css"> <link rel="stylesheet" href="../external/default.date.css"> <script type="text/javascript" src

我有多个文件具有以下类型的导入:

<link rel="stylesheet" href="../vendor/pickadate/lib/themes/default.css">
<link rel="stylesheet" href="../external/default.date.css">
<script type="text/javascript" src="scheduleCtrl_Helper_5.js"></script>
 <script type="text/javascript" src="agenda_Helper.js"></script>

我想找到所有以.js结尾的导入,但不是_5.js(5或任何数字)

同时也忽略了从供应商和外部的进口

我有一个regexp,它似乎工作得很好:

^(?!.external)。[^\d].js”*$

因此,它不包括包含外部和以number.js结尾的导入

但是如何添加多个排除词呢? 比如:

^(?!.external | vendor)。[^\d].js”*$

谢谢您的帮助

您可以使用

\b(?:src | href)=“((?![^”]*(?:外部|供应商))[^”]*[^”\d]\.js)”

详细信息

  • \b
    -单词边界
  • (?:src | href)
    -要么
    src
    要么
    href
  • =”
    -一个
    =”
    字符串
  • ((?![^”]*(?:外部供应商))[^”]*[^”\d]\.js)
    -第1组:
    • (?![^“]*(?:外部|供应商))
      -如果存在除
      以外的零个或多个字符,则会导致匹配失败,并尽可能多地后跟
      外部
      供应商
    • [^”]*
      -除
    • [^”\d]
      -除
      之外的字符和数字
    • \.js
      -a
      .js
      子字符串
  • -一个
    字符

类似于
\b(?:src | href)=“(?![^”]*(?:外部供应商))[^”]*[^”\d]\.js”
的东西。预期的输出是什么?天哪,你怎么做到的?这正是我想要的,谢谢你看到我下面的解释。