如果已知模式,如何删除不需要的字符

时间:2014-05-13 02:12:12

标签: python

众所周知,一些字符串以单个字母(小写和大写)开头,然后是未知的数字,最后是下划线。例如:

myStringA = 'c17898_some other characters and symbols'
myStringB = 't72_ another example string 18925 t 12 S'

myStringC = 'does not have any numbers at all'

如果字符串以描述的模式开头,我需要能够删除它,只留下那些不符合模式的字符:

singleLetter + unknownNumberOfDigits + underscore.

如何最简单地实现?

1 个答案:

答案 0 :(得分:3)

您想要使用regular expression。以下代码将删除您指定的模式,只有它出现在字符串^的开头。

import re

pat = "^[A-Za-z][0-9]*_"
myStringA = 'c17898_some other characters and symbols'

output = re.sub(pat, "", myStringA)
print output