它是python中最简单的子字符串吗?

2024-05-14 00:36:48 发布

您现在位置:Python中文网/ 问答频道 /正文

下面是我从字符串中获取代码的代码(总是在括号中,并且总是有3个字符):

raw_text='Spain (BCN)' #another examples: 'Italy (BGN)' , 'Germany (SXF)'
formatted_text=raw_text[raw_text.index('(')+1:len(raw_text)-1] # BCN,BGN,SFX

我能写得简单些吗?在


Tags: 字符串代码textrawanotherexamples括号个字符
3条回答

是的,当然有。在

raw_text='Spain (BCN)  '
print raw_text.rstrip(" ")[-4:-1] 

使用rstrip删除尾部空格,例如trim。 然后简单地回到4个字符,变成-1个字符。在

如果您确定有这种格式,为什么不直接使用:

s.strip()[-4: -1]

当然,它不会检查字符串的格式。如果您想这样做,请使用re-module(正则表达式)。在

希望这有帮助

迪米

import re
raw_text='Spain (BCN)'
formatted_text = re.search(r"""
    (?<=\() # assert that the preceding character is a (
    \w{3}   # match three alphanumeric characters
    (?=\))  # assert that the following character is a )""", 
    raw_text, re.VERBOSE).group(0)

这是另一种方法(使用正则表达式)。在

相关问题 更多 >