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

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программное обеспечение Windows (http://forum.oszone.net/forumdisplay.php?f=7)
-   -   [решено] Какой программой можно выделить все цифры (http://forum.oszone.net/showthread.php?t=255292)

KooDI 02-03-2013 00:33 2102309

Какой программой можно выделить все цифры
 
Доброго времени суток всем

Есть текстовый документ формат файла *.txt, в нем есть много строк в большинстве с них в конце цифры, мне надо, чтоб с каждой строки в которой есть цифры, они копировались в другой файл построчно.
Не важно каким способом и какой программой.

Iska 02-03-2013 03:11 2102358

Цитата:

Цитата KooDI
в большинстве с них в конце цифры »

Цитата:

Цитата KooDI
с каждой строки в которой есть цифры »

Определитесь, что ищем/извлекаем.

1. Ищем: строки, в конце которых цифры, или же — строки, в которых просто есть цифры в любом месте?
2. Извлекаем: только цифры или всю строку целиком?

KooDI 02-03-2013 10:11 2102408

Цитата:

Цитата Iska
1. Ищем: строки, в конце которых цифры »

Цифры там всегда только в конце

Цитата:

Цитата Iska
2. Извлекаем: только цифры или всю строку целиком? »

Только цифры

Iska 02-03-2013 13:41 2102515

KooDI, попробуйте так:
читать дальше »
Код:

Option Explicit


Dim strSourceFile
Dim objFSO
Dim objRegExp
Dim objTS

Dim strLine


If WScript.Arguments.Count = 1 Then
        strSourceFile = WScript.Arguments.Item(0)
       
        Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")
       
        If objFSO.FileExists(strSourceFile) Then
                Set objRegExp = WScript.CreateObject("VBScript.RegExp")
                Set objTS    = objFSO.CreateTextFile(strSourceFile & ".export.txt", True)
               
                objRegExp.Pattern = "\D*(\d+)$"
               
                With objFSO.OpenTextFile(strSourceFile)
                        Do Until .AtEndOfStream
                                strLine = .ReadLine()
                               
                                If objRegExp.Test(strLine) Then
                                        objTS.WriteLine objRegExp.Execute(strLine).Item(0).SubMatches(0)
                                End If
                        Loop
                       
                        .Close
                End With
               
                objTS.Close
               
                Set objTS    = Nothing
                Set objRegExp = Nothing
        Else
                WScript.Echo "Source file [" & strSourceFile & "] not found"
        End If
       
        Set objFSO = Nothing
Else
        WScript.Echo "Usage: " & WScript.ScriptName & " <Source file>"
End If

WScript.Quit


KooDI 03-03-2013 09:37 2103047

Это скрипт для исполняемого файла?
Какое имя надо дать файлу с текстом?

Iska 03-03-2013 09:55 2103054

Цитата:

Цитата KooDI
Это скрипт для исполняемого файла? »

Это скрипт WSH — Windows Script Host. Сохраните код скрипта в файл с расширением .vbs.

Цитата:

Цитата KooDI
Какое имя надо дать файлу с текстом? »

Любое. Исходный файл указывается аргументом скрипта при запуске. Также можно просто перетащить исходный файл на скрипт. Результирующий файл получит имя целевого +«.export.txt».

KooDI 03-03-2013 10:45 2103076

Спасибо. Задача решена, все очень легко и просто.


Время: 01:33.

Время: 01:33.
© OSzone.net 2001-