中国DOS联盟论坛

China DOS Union

-- Unite DOS · Advance DOS · Grow DOS --
Union site: www.cn-dos.net Forum site: www.cn-dos.net/forum
Guest | Log in | Register | Members | Search | China DOS Union
中国DOS联盟论坛
The time now is 2026-09-30 21:16
47,813 topics / 349,918 posts / today 0 new / 48,279 members
DOS批处理 & 脚本技术(批处理室) » [Help] How to extract QQ numbers from Info.db of QQ2009 (Solved)
Printable Version  7,334 / 30
Floor16 yishanju Posted 2009-03-03 15:08
银牌会员 Posts 1,357 Credits 1,488
I'm too lazy to install 2009. How did you replace it?
Floor17 Hanyeguxing Posted 2009-03-03 15:33
银牌会员 Posts 897 Credits 1,039 From 在地狱中仰望天堂
Uploaded QQ2009 information info.db file http://upload.cn-dos.net/img/1348.rar

For example, there are the following garbled codes:

涳艛?忌:J垟麳]CF K-婣硵艛?忌:鉁s?殸⑽矎?
NF 
 515187266 9TD  傢ろ
04  435853964 -TD 傘18娿
?
 5? o欙L(   } ~搁搁块€8362-406
務蠚崄u39E拞r 515187266 >TD 
ffffTA ?{-%/%//>PWf@=Oφ≌οη∠┫


Requirement: Display digital strings in separate lines.
1. Since the QQ number and the numbers in the garbled code may be connected together due to directly filtering other characters, making it impossible to distinguish, I personally think that replacement should be used.
2. Because there are digital strings like 8362-406 in the garbled code, the - should not be filtered out during filtering.
3. Since there are numbers in this garbled code, the consecutive digital strings with less than 5 digits are required to be deleted.
4. Because there are digital strings like 8362-406 in the garbled code, which are not QQ numbers, delete the digital strings containing -.
5. Delete duplicate digital strings

Example effect after extracting the QQ number:

435853964
515187266


[ Last edited by Hanyeguxing on 2009-3-4 at 01:16 ]
Floor18 yishanju Posted 2009-03-03 15:38
银牌会员 Posts 1,357 Credits 1,488
Batch file names cannot be the same as commands. They cannot be saved as COPY, FR, etc.
Floor19 yishanju Posted 2009-03-03 15:38
银牌会员 Posts 1,357 Credits 1,488
Just upload one file.
Floor20 Hanyeguxing Posted 2009-03-03 18:55
银牌会员 Posts 897 Credits 1,039 From 在地狱中仰望天堂
Thanks to the enthusiastic help of the upstairs big.
Floor21 yishanju Posted 2009-03-04 00:13
银牌会员 Posts 1,357 Credits 1,488
Still, let's first explain the purpose of what you're doing. What exactly is the reason for doing this? Is it to extract QQ numbers, or is it simply to replace characters other than QQ numbers
Floor22 HAT Posted 2009-03-04 00:17
版主 Posts 5,017 Credits 9,023
There were already 10-digit QQ numbers a long time ago ^_^
Floor23 Hanyeguxing Posted 2009-03-04 01:17
银牌会员 Posts 897 Credits 1,039 From 在地狱中仰望天堂
Originally posted by yishanju at 2009-3-4 00:13:
Still, first explain the purpose of what you're doing
What exactly is the purpose of doing this
Is it to extract QQ numbers, or is it simply to replace characters other than QQ numbers

Of course, it's to extract QQ numbers...
This is what I did:
1. First, back up the file, use fr to replace all characters other than "-" and "0-9" with "Z" (because there are "-" in the messy numbers, so keep them, for example, 801056-105) as "Z".
2. Then merge "Z" into spaces
3. Then, split by spaces and newlines. But this command causes some numbers to be lost and errors during operation, and I don't know how to fix it.
4. Delete blank lines and spaces, special strings
5. Delete duplicate lines


@echo off&setlocal enabledelayedexpansion
copy info.db isee1.txt>nul 2>nul
fr -ric:"" -t:"Z" ISee1.txt
for /f "delims=" %%i in (ISee1.txt) do (
set han=%%i
>>ISee2.txt echo !han!
)
del ISee1.txt
fr -f:"ZZ" -t:"Z" ISee2.txt
find ISee2.txt "ZZ" && GOTO CC||fr -f:"Z" -t:" " ISee2.txt
for /f "tokens=1*" %%n in (ISee2.txt) do (
set xing=%%n
>>ISee1.txt echo !xing!
>>ISee1.txt echo !xing!
)
del ISee2.txt
for /f "delims=" %%k in (ISee1.txt) do (
set ye=%%k
set "ye=!ye: =!"
set "ye=!ye:012345789=!"
set "ye=!ye:0123456789=!"
>>ISee2.txt echo=!ye!
)
del ISee1.txt
setlocal disabledelayedexpansion
for /f "delims=" %%l in (ISee2.txt) do (
if not defined %%l set %%l=A & echo %%l>>ISee1.txt
)

del ISee2.txt

。。。。。。


6. ::Delete strings or lines with "-"
::Delete lines with fewer than 5 characters (continuous numbers in the mess will not reach 5 characters)
。。。。。。Hey, didn't get it right Last edited by Hanyeguxing on 2009-3-4 at 02:08 ]
Floor24 yishanju Posted 2009-03-04 01:27
银牌会员 Posts 1,357 Credits 1,488
...
This is not at the same level in terms of difficulty, I don't know how to do it anymore
Floor25 Hanyeguxing Posted 2009-03-04 02:00
银牌会员 Posts 897 Credits 1,039 From 在地狱中仰望天堂
Originally posted by yishanju at 2009-3-4 01:27:
。。。。
This is not just a level up in difficulty, I don't know how to do it anymore

Fleeing halfway is not kind... Haha
Floor26 HAT Posted 2009-03-04 05:37
版主 Posts 5,017 Credits 9,023
Floor27 zqz0012005 Posted 2009-03-04 21:55
中级用户 Posts 135 Credits 297
Floor28 ily2013 Posted 2009-04-23 22:52
中级用户 Posts 83 Credits 247
Originally posted by HAT at 2009-3-4 05:37:
Floor29 netbenton Posted 2009-04-24 00:50
银牌会员 Posts 752 Credits 1,916 From 广西
Can you replace all non-digits with 0a (newline character) when replacing? If possible, add a for /f %%a in (... and then all digit strings can be extracted. Then judge whether %%a is greater than 9999 to know whether it is a QQ number. This way, the speed will be much faster.

[ Last edited by netbenton on 2009-4-23 at 22:55 ]
Floor30 yishanju Posted 2009-04-24 03:08
银牌会员 Posts 1,357 Credits 1,488
Then judge whether %%a is greater than 9999 to know whether it is a QQ number. This idea is brilliant!
Prev  1 2 3  Next
[ Contact the Union admin team - 中国DOS联盟 - Standard version ]
Sponsored by ifanr Inc | © 2001–2023