Как извлечь определенное значение в текстовом файле с помощью регулярных выражений и сохранить извлеченное значение в другом файле? - PullRequest
0 голосов
/ 18 июня 2019

имеют текстовый файл со многими значениями, как извлечь из него определенную часть и упорядочить ее по порядку в другом текстовом файле

некоторая часть текстового файла:

{
"number": "acd162",
"password": "pass1425-*",
"Type": "phone"

}
{
"number": "bcd119",
"password": "pass1234- ",
"Type": "phone"

}
{
"number": "abc123",
"password": "pass0*++",
"Type": "phone"

{
"number": "ahwc1286",
"password": "pass*-+",
"Type": "phone"

}

вывод мне нужен:

нужен столбец пароля всего в другом текстовом файле, так как

1="pass1425-"
2="pass1234- "
3="pass0*++"
4="pass*-+"

пробовал это:

"password":.* "\w+" 

, но не мог понять, как мне их извлечь иотдать приказ по мудрому значению присвоить им 1,2,3,4,5 .....

1 Ответ

1 голос
/ 18 июня 2019

Если текстовый файл не является JSON:

import re

data = '''
{
"number": "acd162",
"password": "pass1425-*",
"Type": "phone"

}
{
"number": "bcd119",
"password": "pass1234- ",
"Type": "phone"

}
{
"number": "abc123",
"password": "pass0*++",
"Type": "phone"

{
"number": "ahwc1286",
"password": "pass*-+",
"Type": "phone"

}
'''

for i, p in enumerate(re.findall(r'"password":[^"]*"(.*?)"', data), 1):
    print('{}="{}"'.format(i, p))

Печать:

1="pass1425-*"
2="pass1234- "
3="pass0*++"
4="pass*-+"

Если это JSON:

import json

data = '''
[{
"number": "acd162",
"password": "pass1425-*",
"Type": "phone"

},
{
"number": "bcd119",
"password": "pass1234- ",
"Type": "phone"

},
{
"number": "abc123",
"password": "pass0*++",
"Type": "phone"
},
{
"number": "ahwc1286",
"password": "pass*-+",
"Type": "phone"
}]
'''

for i, d in enumerate(json.loads(data), 1):
    print('{}="{}"'.format(i, d['password']))

Печать:

1="pass1425-*"
2="pass1234- "
3="pass0*++"
4="pass*-+"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...