gpt4 book ai didi

regex - 如何使用负向后视与量词?

转载 作者:行者123 更新时间:2023-12-04 22:27:05 25 4
gpt4 key购买 nike

我想对量词使用负回顾。但我有错误。我使用 Perl。

我有几个文本文件,我需要检测它们在不同单词之前是否有特殊的文本前缀。

错误:

A quantifier inside a lookbehind makes it non-fixed width



我的正则表达式:
/(?<!big([\s]+)?)dog/

我想得到第四个和第五个数字。
1. bigdog - not ok
2. big dog - not ok
3. big dog - not ok
4. dog - ok
5. dog any text except big. dog - ok

最佳答案

您可以使用 SKIP 和 FAIL 动词。

#! /usr/bin/perl
use warnings;
use strict;

use Test::More tests => 7;

my $regex = qr/big\s*dog(*SKIP)(?!)|dog/;

unlike 'bigdog', $regex;
unlike 'big dog', $regex;
unlike 'big dog', $regex;
unlike 'cat', $regex;

like 'dog', $regex;
like 'small dog', $regex;
like 'medium dog and big dog', $regex;
qr/(?<!big)\s*dog/是有问题的
big dog
^
|
matches here: is not preceded by "big" but "big "

关于regex - 如何使用负向后视与量词?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53781743/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com