Python - 从变量中提取数据的正则表达式

时间:2018-05-11 13:20:46

标签: python regex python-3.x

我正在尝试提取存储在下面变量中的名称。我正在尝试使用正则表达式提取但是我收到了无效的语法错误。

lapply

预期产出1:托马斯 预期产出2:男性

任何人都可以帮忙解决这个问题。感谢

4 个答案:

答案 0 :(得分:3)

检查变量,并在python3 print()而不是print

import re
var = 'Thomas/Male/'
output = re.search('([\w.-]+)/([\w.-]+)', var)
if output:
    print(output.group(0))
    print(output.group(1))
    print(output.group(2))

输出:

Thomas/Male
Thomas
Male

答案 1 :(得分:2)

您可以使用str.split

var = 'Thomas/Male/'
var = var.split("/")
print(var[0], " = " ,var[1])

<强>输出:

Thomas = Male

答案 2 :(得分:2)

您可以搜索字母数字字符:

import re
var = 'Thomas/Male/'
name, gender = re.findall('\w+', var)

输出:

'Thomas'
'Male'

答案 3 :(得分:2)

如果数据始终采用您发布的格式(something/somethingElse/),那么使用split()而非正则表达式可以更轻松地完成此操作:

var = 'Thomas/Male/'
var_split = var.split('/')
print(var_split[0])
print(var_split[1])

输出:

Thomas
Male