python - 拆分字符串并在 python 中获取数字?

标签 python string split

我有一个像 "GoTo: 7018 6453 12654\n" 这样的字符串 我只想得到这样的数字 ['7018', '6453', '12654'],我尝试了正则表达式,但我无法拆分字符串以获取数字这里是我的代码:

示例 1:

splitter = re.compile(r'\D');
match1 = splitter.split("GoTo: 7018 6453 12654\n")

my output is: ['', '', '', '', '', '', '', '', '7018', '6453', '12654', '']

示例 2:

splitter = re.compile(r'\W');
match1 = splitter.split("GoTo: 7018 6453 12654\n")

my output is: ['GoTo', '', '7018', '6453', '12654', '']

最佳答案

如果你所有的数字都是正整数,你可以通过使用 isdigit() 不使用正则表达式来做到这一点方法:

>>> text = "GoTo: 7018 6453 12654\n"
>>> [token for token in text.split() if token.isdigit()]
['7018', '6453', '12654']

关于python - 拆分字符串并在 python 中获取数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4553113/

相关文章:

python - 使用 python cgi 运行 linux 命令时,HTML 页面卡在加载中

python - 检查对象属性名称是否出现在字符串python中

excel - 使用基于instr的位置提取空格之间的字符串

javascript - 使用正则表达式拆分字符串 accur 'undefined'

python - 如何将 cloudwatch 目标输入作为参数传递给 Lambda 函数

python - 使用未装饰的窗口启动 Tkinter

python - 查找困在列表中的字符数

c++ _bstr_t 而不是使用字符串

string - VBA在最后一个单词之后切割字符串总长度小于80个字符

java - 正则表达式模式,匹配器,split或pattern.split()哪个是最有效的