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

"WORD1", "WORD2", "WORD3" ...

Я хотел бы знать, могу ли я удалить слова, которые длиннее 9 символов. Как я могу это сделать? Я могу использовать Notepad++, если это необходимо.

2 ответа2

0

Вы можете использовать Powershell для этого:

Файл test.txt:

"xxxxxx7","xxxxxxx8","xxxxxxxx9","xxxxxxxx10","xxxxxxxxx11"

Powershell:

get-content test.txt | foreach-Object {
  $_.Split(',') 
} | % {if($_.length -lt 12) {$_}} | & {$ofs=',';"$input"} | out-file test2.txt

test2.txt:

"xxxxxx7","xxxxxxx8","xxxxxxxx9"

-lt 12 означает ниже 12 (9 символов + 2 кавычки = 11)

0
  • Ctrl+H
  • Найти что: "[^"]{10,}",?
  • Заменить на: LEAVE EMPTY
  • проверить обернуть
  • проверьте регулярное выражение
  • Заменить все

Объяснение:

"           # a double quote
[^"]{10,}   # 10 or more non quote character
"           # a double quote
,?          # an optional comma

Пример ввода:

"word","wordword","wordwordword","word"

Выход:

"word","wordword","word"

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .