[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 批处理如何提取文本中特定字符串/字段中的数字并输出到新的文本里?

本帖最后由 pcl_test 于 2016-6-4 21:11 编辑

<config>
<a id="attack"
data="key:0,xx:0,yy:0,w:61,h:91,dx:37,dy:82|key:1,xx:0,yy:0,w:62,h:90,dx:38,dy:82|key:2,xx:0,yy:0,w:62,h:87,dx:38,dy:79|key:3,xx:0,yy:0,w:68,h:86,dx:43,dy:78|key:4,xx:0,yy:0,w:67,h:93,dx:43,dy:85|key:5,xx:0,yy:0,w:77,h:89,dx:54,dy:80

竖向图---------
data="
key:0,xx:0,yy:0,w:61,h:91,dx:37,dy:82|
key:1,xx:0,yy:0,w:62,h:90,dx:38,dy:82|
key:2,xx:0,yy:0,w:62,h:87,dx:38,dy:79|
key:3,xx:0,yy:0,w:68,h:86,dx:43,dy:78|
key:4,xx:0,yy:0,w:67,h:93,dx:43,dy:85|
key:5,xx:0,yy:0,w:77,h:89,dx:54,dy:80|

想提取里面的DX:   DY:  后面的数字,并且写入到另外文本里面保存,并且分行!求大神指教啊!希望能用DAT批处理
1

评分人数

  1. mshta http://bathome.net/s/hta/ "type('文本.txt').match(/d(x|y):\d+/ig).join('\r\n').replace(/d(x|y):/ig, '')"
复制代码

TOP

  1. //&@cls&cscript -nologo -e:jscript "%~f0"&pause&exit
  2. WScript.Echo(
  3.     new ActiveXObject('Scripting.FileSystemObject').OpenTextFile('test.txt').ReadAll().match(/(\d+(?=,dy))|(\d+(?=\|))/g).join('\n')
  4. );
复制代码

TOP

本帖最后由 ivor 于 2016-6-4 19:15 编辑

回复 1# comkom1

Python3.5 代码
  1. # coding:utf-8
  2. # 想提取里面的DX:   DY:  后面的数字,并且写入到result文本里面保存,
  3. import re
  4. for line in open('example.txt'):
  5.     for cols in line.split(sep=','):
  6.         if cols.find('dx') == 0 or cols.find('dy') == 0:
  7.             print(re.search('[0-9]+', cols).group(0), file=open('result.txt', 'a'))
复制代码
结果
37
82
38
82
38
79
43
78
43
85
54
80
#&cls&@powershell "Invoke-Expression ([Io.File]::ReadAllText('%~0',[Text.Encoding]::UTF8))" &pause&exit

TOP

大神们,有办法没有,重金求解啊。
252738423联系我。

TOP

返回列表