Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Обработка текста (http://forum.oszone.net/showthread.php?t=266638)

hatun 22-08-2013 02:43 2205460

Обработка текста
 
Приветствую. Возникла необходимость обработать текстовый файл.(powershell)
На входе есть текстовый файл input.txt:

ivanov@test
petrov@test1
sidorov@proekt
system12345@okji
ubrat@fgt

необходимо получить файл вида:
ivanov@test ivanov@test
petrov@test1 petrov@test1
sidorov@proekt sidorov@proekt

исключив из файла строки содержащие system1234, ubrat

спасибо за любую помощь.

Foreigner 22-08-2013 06:46 2205476

Код:

$a = (gc input.txt) -notmatch '(system1234|ubrat)'                                                     
$a | % { "$_ $_" } | sc input.txt


hatun 26-08-2013 05:11 2207682

Спасибо.

А каким образом экранируются знаки вопроса?

$a = (gc input.txt) -notmatch '(system1234|??????)'
$a | % { "$_ $_" } | sc out.txt

Iska 26-08-2013 05:34 2207686

Цитата:

Цитата hatun
А каким образом экранируются знаки вопроса? »

powershell regular expression - Поиск в Google

Код:

$sFile = "E:\Песочница\0317\input.txt"

$cContent = (Get-Content -Path $sFile) -notmatch "(system1234|\?{6})"

$cContent | ForEach-Object -Process {
    "$_ $_"
} | Set-Content -Path $sFile

Откуда в E-mail'ах знаки вопроса?

Foreigner 26-08-2013 18:09 2208025

hatun,
А что знаки вопроса уже допустимы в мэйл-адресе? Маска для файлов здесь не подойдет.
Код:

... -notmatch '(system12345|^[^@]{6}@.*$)
А вообще, проверка на валидность email с помощью рег. выражений, это не такая уж и простая тема

Iska 26-08-2013 18:46 2208050

Цитата:

Цитата Foreigner
Маска для файлов здесь не подойдет. »

Foreigner, телепат, однако ;). Я не догадался.

hatun 27-08-2013 06:44 2208323

Спасибо.


Время: 16:56.

Время: 16:56.
© OSzone.net 2001-