2019-01-18
阅读量:
740
我想在这些字符串之间得到数字
strings = ["point_right: account ISLAMIC: 860328 9221 asdsad",
"account 723123123",
"account823123213",
"account 823.123.213",
"account 823-123-213",
"account:123213123 ",
"account: 123213123 asdasdsad 017-299906",
"account: 123213123",
"point_right: account ISLAMIC: 860328 9221"
]
结果将是
[860328 9221,723123123, 823123213, 823.123.213, 823-123-213, 123213123, 123213123, 123213123]
我可以稍后处理,使它们成为数字。到目前为止,我的策略是在模式之后获取所有内容以及在信件之前的任 我试过了:
for string in strings:
print(re.findall("(?<=account)(.*)", string.lower()))
试试这种模式:
(?=[^0-9]*)[0-9][0-9 .-]*[0-9]
分解:
(?=[^0-9]*)
前瞻一个词,如“帐户”,不匹配[0-9]
找一个数字[0-9 .-]*
找到任意数量的数字或特殊字符(在你的字符串中你有空格,短划线,句号,所以我包括那些)[0-9]
找另一个数字(以防止结尾处的空格)






评论(0)


暂无数据
推荐帖子
0条评论
0条评论
0条评论