下面是我的代码:
import re
str = "?CNTN_CD=A0002400127&PAGE_CD=ET00_1&BLCK_NO=1&CMPT_CD=T0016&TEXT=한글패러미터"
pattern = re.compile("[a-zA-Z0-9?=&\-_]+")
result = pattern.search(str)
print(result)
结果如下:
<_sre.SRE_Match object; span=(0, 65), match='?CNTN_CD=A0002400127&PAGE_CD=ET00_1&BLCK_NO=1&CMP>
但我期待这样的结果:
<_sre.SRE_Match object; span=(0, 65), match='?CNTN_CD=A0002400127&PAGE_CD=ET00_1&BLCK_NO=1&CMPT_CD=T0016&TEXT=>
我找不到那个结果的原因。请给我一些建议。你知道吗
非常感谢。你知道吗
您可以使用:
Demo
样本来源:(run here)
您正在打印
_sre.SRE_Match
的字符串表示形式,它不能保证打印所有匹配的字符。我查看了CPython源代码,发现了以下implementation:如您所见,它只输出组的前50个字符。你知道吗
您可以使用以下正则表达式进行检查:
如您所见,
match
总是小于或等于50个字符。你知道吗要获得实际匹配的字符串,可以使用
group
方法:我测试了你的代码,它的工作方式和你期望的一样,我的python是v2.7
相关问题 更多 >
编程相关推荐