Я не думаю, что вы можете сделать такую работу в NPP ,
Вот способ выполнения работы с perl, который хранит регистр и порядок первой строки.
(Спасибо @jwpfox для примера ввода).
use Modern::Perl;
my $prev = '';
while(<DATA>) {
chomp;
my $str = join'',sort split' ',lc$_;
say $_ if $str ne $prev;
$prev = $str;
}
__DATA__
White shoes women
Shoes women white
Women white shoes
White shoes women
Shoes women white
Women white shoes
Men black boots
Black boots men
Boots men black
girl yellow shirt
yellow girl shirt
pants blue boy
Выход:
White shoes women
Men black boots
girl yellow shirt
pants blue boy
версия в PHP:
$s = array(
'White shoes women',
'Shoes women white',
'Women white shoes',
'White shoes women',
'Shoes women white',
'Women white shoes',
'Men black boots',
'Black boots men',
'Boots men black',
'girl yellow shirt',
'yellow girl shirt',
'pants blue boy');
$prev = '';
foreach($s as $line) {
$list = explode(' ', strtolower($line));
sort($list);
$str = implode('',$list);
if ($str != $prev) echo $line,"\n";
$prev = $str;
}
Выход:
White shoes women
Men black boots
girl yellow shirt
pants blue boy
Каковы ваши полный набор требований? Как определить дубликат? Какую роль играют заглавные и строчные буквы? Как вы выбираете, какой из «дубликатов» должен храниться и который нужно отбросить? – jwpfox
Как я могу сказать, Как пример 3 строки с дублирующимся словом, но в другом положении. поэтому я хочу сохранить первый появившийся и отбросить другую строку с тем же словом. Нет необходимости в верхнем и нижнем регистре. – hamsun
Не нужно значит что? Что мы игнорируем? Так хорошо, что выход будет «белыми женщинами-женщинами» или «БЕЛОЙ ОБУВИ ЖЕНЩИНАМИ» независимо от ввода? – jwpfox