字符串基础练习题80+道(原文及代码见文尾链接)

Python

字符串基础练习题80+道

1.编写一个Python程序来计算字符串的长度。

2.编写一个Python程序来计算字符串中的字符数(字符频率)。
Sample String:google.com' 
预期结果:{'o':3,'g':2,'。':1,'e':1,'l':1,'m':1 ,'c':1} 

3.编写一个Python程序,从给定的字符串中获取由前2个字符和后2个字符组成的字符串。如果字符串长度小于2,则返回而不是空字符串。
样本字符串:'w3resource' 
预期结果:'w3ce' 
样本字符串:'w3' 
预期结果:'w3w3' 
样本字符串:'w' 
预期结果:空字符串 

4.编写一个Python程序,从给定的字符串中获取一个字符串,该字符串中所有出现的第一个字符都已更改为'$',但第一个字符本身除外。
Sample String:'restart' 
预期结果:'resta $ t' 

5.编写一个Python程序,从两个给定的字符串中获取一个字符串,并用空格隔开,然后交换每个字符串的前两个字符。
样本字符串:'abc','xyz' 
预期结果:'xyc abz' 

6.编写一个Python程序,在给定字符串的末尾添加“ ing”(长度至少应为3)。如果给定的字符串已经以“ ing”结尾,则添加“ ly”。如果给定字符串的字符串长度小于3,则保持不变。
样本字符串:'abc' 
预期结果:'abcing' 
样本字符串:'string' 
预期结果:'stringly' 
 

7.编写一个Python程序,从给定的字符串中查找子字符串'not'和'poor'的首次出现,如果'not'跟在'poor'之后,则将整个'not'...'poor'子字符串替换为'好'。返回结果字符串。
示例字符串:“歌词并不那么糟糕!” 
“歌词很差!” 
预期结果:“

在C#中,解析报文头和报文尾通常涉及到字符串处理和模式匹配。假设报文有一个固定的头部和尾部结构,比如常的HTTP请求头部和结束行(如'\r\n'),你可以按照以下步骤进行: 1. **读取报文头**: - 定义报文头的预期格式,例如:"GET /example HTTP/1.1" 或 "POST /api/data HTTP/1.1"。 - 使用 `Substring` 或 `IndexOf` 方法查找报文头的位置,找到起始位置通常是0或已知长度。 - 如果有多个可能的头部(如多个HTTP版本信息),可以遍历直到找到特定部分。 ```csharp string rawMessage = "GET /example HTTP/1.1\r\nContent-Length: 123"; int headerStart = rawMessage.IndexOf("HTTP/") + "HTTP/".Length; // 找到 "HTTP/" 的位置 string header = rawMessage.Substring(0, headerStart); // 提取报文头 ``` 2. **解析报文头内容**: - 对于每个字段(如方法、路径和协议版本),可以用正则表达式或Split方法将其分开。 3. **寻找报文尾**: - 报文尾通常包含换行符,如"\r\n"。可以根据这个特征定位结束位置。 - 确保找到的是完整的一对,因为有些消息可能只有一部分在内存中。 ```csharp int footerEnd = rawMessage.LastIndexOf("\r\n") + 2; // 计算并获取报文尾结束位置 string footer = rawMessage.Substring(headerStart, footerEnd - headerStart); // 提取报文尾 ``` 4. **分离报文主体**: - 使用已知的头部和尾部长度,从原始字符串中减去这两个部分,得到报文主体。 ```csharp string body = rawMessage.Substring(footerEnd); ```
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值