2017-01-23 12 views
0

Мне было интересно, есть ли способ найти (и отобразить) все уникальные слова (слова, которые появляются один раз) в текстовом файле? Можно ли это сделать только с помощью командной строки? Или мне нужно использовать что-то вроде скрипта python?Уникальные слова в текстовом файле

+0

Вы также можете попробовать этот [ссылка] (http://stackoverflow.com/questions/22978602/how-to-return-unique-words-from-the-text-file-using-python) –

ответ

0

Если вы не хотите писать приложение, то самый простой способ, который я могу сделать для этого, - использовать powershell. Смотрите это:

https://msdn.microsoft.com/en-us/powershell/reference/5.1/microsoft.powershell.utility/get-unique

Пример, который Microsoft предоставляет заполнит переменную со списком уникальных слов:

$A = $(foreach ($line in Get-Content C:\Test1\File1.txt) {$line.tolower().split(" ")}) | sort | Get-Unique 

вы можете использовать дополнительные ограничители, хотя разделить на знаки препинания, например, как это:

$A = $(foreach ($line in Get-Content C:\test.txt) {$line.tolower().split(" .,?!;:")}) | sort | Get-Unique 

Поместите это в файл с расширением .ps1, и вы можете запустить его из командной строки. Для того, чтобы получить значения из переменных только вторая строки с переменным эхом результата на экран:

$A 

Чтобы получить количество элементов в массиве вы могли бы сделать это:

$A.count 
+0

Это отлично работало ! Спасибо огромное! –

+0

Нет проблем. Для простых задач, таких как этот PowerShell, идеально. Быстрее сбивать небольшой скрипт, чем писать приложение, которое нужно скомпилировать. – tonythewest

+0

Есть ли способ игнорировать пунктуацию вообще? –