我想使用特征构造函数从一列字符串中提取数字。
Input Output
S.c 3224 ---> 3224
South ---> 0
322523 ---> 322523
S-1c 4 ---> 14
-1.37 ---> 137
内部橙色 3.7.0 文档说对于连续变量,您只需在 Python 中构造一个表达式。 伟大的!
我在功能构造函数代码中找到了有关允许功能的信息:
#Only expressions with no list,set,dict,generator comprehensions
#are accepted.
<...>
__ALLOWED = [
"Ellipsis", "False", "None", "True", "abs", "all", "any", "acsii",
"bin", "bool", "bytearray", "bytes", "chr", "complex", "dict",
"divmod", "enumerate", "filter", "float", "format", "frozenset",
"getattr", "hasattr", "hash", "hex", "id", "int", "iter", "len",
"list", "map", "memoryview", "next", "object",
"oct", "ord", "pow", "range", "repr", "reversed", "round",
"set", "slice", "sorted", "str", "tuple", "type",
"zip"
]
根据列表,我希望使用这样的表达式:
int(filter(str.isdigit, inputStringColumn) or 0)
...但这是一个“无效的表达”(没有进一步的反馈)
如何从字符串中提取数字?