如何在包含特定字符的字符串中打印作品

时间:2017-11-22 16:40:28

标签: python regex python-2.7

对于这个字符串:

string ='fieldnameRelated_actions/fieldnamedatatypeRESOURCE_LIST</datatype><values><value>![CDATA[nprod00123456]/value>value>![CDATA[nprod00765432]]/valuevaluesfield'

我想打印nprod00123456nprod00765432 或者说:nprodxxxxxxxx

如何在Python中完成?

1 个答案:

答案 0 :(得分:-1)

您可以使用以下正则表达式:

import re    

text = "fieldnameRelated_actions/fieldnamedatatypeRESOURCE_LIST![CDATA[nprod00123456]/value>value>![CDATA[nprod00765432]]/valuevaluesfield"
print re.findall(r'(nprod\d+)', text)

给你:

['nprod00123456', 'nprod00765432']    

这可以通过在文本中找到任意nprod后跟一个或多个数字来实现。

或者,如果没有re,则可能如下:

print ['nprod{}'.format(t.split(']')[0]) for t in text.split('nprod')[1:]]