Amj*_*ith 2 python regex perl grep
我有一个大单词列表文件,每行一个单词.我想用重复的字母过滤掉单词.
INPUT:
abducts
abe
abeam
abel
abele
OUTPUT:
abducts
abe
abel
Run Code Online (Sandbox Code Playgroud)
我想用Regex(grep或perl或python)来做这件事.那可能吗?
这是很容易编写匹配单词的正则表达式也有重复的字母,然后否定匹配:
my @input = qw(abducts abe abeam abel abele);
my @output = grep { not /(\w).*\1/ } @input;
Run Code Online (Sandbox Code Playgroud)
(此代码假定@input每个条目包含一个单词.)但是这个问题不一定最好用正则表达式解决.
我已经在Perl中给出了代码,但它可以很容易地转换为支持反向引用的任何正则表达式风格,包括grep(它也有-v切换否定匹配).