【发布时间】:2013-02-13 14:58:32
【问题描述】:
我有一个字符串,如下所示:
26 (passengers:22 crew:4)
或
32 (passengers:? crew: ?)
。我要做的是拆分代码,以便只提取代表乘客和机组人员数量的数字。如果是问号,我会寻找将其替换为“”。
我知道我可以使用 string.replace("?", "") 来替换 ?但是我该如何分别提取机组人员或乘客的数字字符?这些数字可能从两位数到三位不等,因此我无法将字符串的最后几个字符或以特定间隔切分。
提前致谢
【问题讨论】:
-
数字可能从两位数到三位不等与您的示例相矛盾;我在那里看到一个 一个 数字号码 (
4)。我的回答假设 1 位数也可以。 -
@MartijnPieters 感谢 Martijn。给出的示例只是数百个字符串中的两个。例如,可能有一个“crew:135”条目。
-
是的,那是 3 位数。
4是 一个 数字,但您接着说数字从两到三位不等,这意味着4不是有效数字。 -
啊,抱歉……是的,这些数字确实会从 1 到可能的数百个数字不等。道歉并感谢您的解决方案
标签: python regex string python-2.7