regex Lookbehind的正则表达式无效(在Chrome中有效,而在Safari中无效)

von4xj4u  于 2022-11-18  发布在  其他
关注(0)|答案(1)|浏览(158)

我使用正则表达式来替换介词和度量,它包含Safari不支持的Lookbehind结构,尽管可以替换它而不损失功能
表达式(Javascript):

(?<!\S)(in|on|under|and|from)(?!\S)(?:\s)

Safari错误:
未处理的承诺拒绝:语法错误:正则表达式无效:组说明符名称无效
我正在尝试更改此(Javascript)上的表达式:

(?:\s)(in|on|under|and|from)(?!\S)(?:\s)

但是这个选项不会找到两个介词在一起,而只会找到其中的第一个 (例如,“and on”,“from under”)

x3naxklr

x3naxklr1#

可以只在末尾使用(?!\S)来Assert空白边界,并匹配字符串的开头或模式开头的空白字符:

(?:\s|^)(in|on|under|and|from)(?!\S)

Regex demo

相关问题