Javascript regexp 后顾

2025年3月18日 | 阅读 5 分钟

后行断言(Lookbehind)使 JavaScript 能够向后移动,使用字符串搜索指定的模式。Lookaround 是前行断言(Lookahead)和后行断言(Lookbehind)表达式的组合。如果输入值出现在另一组字符之后,我们将使用后行断言来引用这组特定的字符。当我们在同一个字符串中查找各种模式时,这很有用。

语法

以下语法显示了 JavaScript 正则表达式中的正向后行断言:

以下语法显示了 JavaScript 正则表达式中的负向后行断言:

说明

后行断言有两种类型,如下所示:

  • 正向后行断言:它将确定一个特定元素是否包含在模式中,但实际上不会匹配它。
  • 负向后行断言:它用于检查搜索模式之后是否存在特定元素。将特定模式括在 (?!) 之间表示负向后行断言。

示例

以下示例显示了正则表达式的正向和负向后行断言。

示例 1

在此示例中,“butter”使用正向后行断言与“fly”或“milk”匹配。当第一个值出现在模式值之后时,输出显示为 true。

输出

下图显示了布尔值作为输出。

Javascript regexp Lookbehind

示例 2

在此示例中,“butter”使用正向后行断言与“fly”或“milk”匹配。我们可以使用后行断言表达式来测试正则表达式。

输出

下图显示了数据值作为输出。

Javascript regexp Lookbehind

Example3

在此示例中,“butter”使用负向后行断言与“fly”或“milk”匹配。如果第一个值未出现在最后一个值之后,则输出显示为 true。如果第一个值与最后一个值不匹配,则输出显示为 false。

输出

下图显示了布尔值作为输出。

Javascript regexp Lookbehind

Example4

在此示例中,“butter”使用正向后行断言与“fly”或“milk”匹配。

输出

下图显示了布尔值作为输出。

Javascript regexp Lookbehind

示例 5

在此示例中,后行断言正则表达式用于从模式值中获取可用值。我们可以使用控制台(console)选项卡、警告框(alert)和其他输出选项卡来显示后续值。我们可以将 JavaScript 的 match 函数与表达式函数一起使用。这里,输出显示了输入值之后出现的值。

输出

下图显示了可用值作为输出。

Javascript regexp Lookbehind

示例 6

在此示例中,负向后行断言正则表达式用于从模式值中获取可用值。

输出

下图显示了精确值作为输出。

Javascript regexp Lookbehind

支持的浏览器

以下浏览器支持 JavaScript 后行断言表达式。

  • 谷歌浏览器
  • 火狐
  • Internet Explorer
  • Opera
  • Safari

结论

JavaScript 后行断言表达式在输入值之后,在字符串值中搜索所需关键字。此表达式用于模式识别和操作。