删除带有第一个或最后一个单词的字符串 perl 在列表中

remove string perl with first or last word is in a list

如果第一个或最后一个单词是这个单词列表中的一个,我会尝试删除所有字符串:“the 一世 在 那里 这个 和 上 我们 那 的

例如,如果我在输入文件中有这个字符串 "with me" 这个字符串将被删除,

示例: 输入

"the european union"


"would like to"

"would like"

"of the european"

"the european parliament"

"the member states"

输出

"would like to"

"would like"

我有这个想法,在我看来有点困难:

my @small = qw(the i in there this with on we that of);
my $small_re = join "|", @small;
$small_re = qr(^(?:$small_re)|(?:$small_re)$);
if ($sequence !~ /$small_re/) {
#...
}

还有其他想法吗?

谢谢

^(?=the|i|in|there|this|with|on|we|that|of).*$|^(?=.*(?:the|i|in|there|this|with|on|we|that|of)$).*$

通过 empty string 尝试 this.Replace。查看演示。

https://regex101.com/r/sH8aR8/42