Python 技巧篇-字符串灵活处理:字符串过滤、字符串拼接,字符串切片,特殊、超长字符串的处理实例演示
时间:2022-07-25
本文章向大家介绍Python 技巧篇-字符串灵活处理:字符串过滤、字符串拼接,字符串切片,特殊、超长字符串的处理实例演示,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
字符串简单处理的话用字符串切片很容易实现,
形如:a="Hello Python!"
,a[-7:]="Python!"
,
规则:大于等于冒号前的小于冒号后的,两端可以省略,正的开头是0,小的开头是-1。
简单,短的字符串还好,复杂的,长的麻烦了。
我们用原始的方法来处理:回归原始,回归简单!
实例一:
有如下一串字符串,这是 xpath 路径,我想过滤掉中括号里的内容:
"/html/body/div[@id='wrapper']/div[@id='head']/div[@class='head_wrapper']/div[@class='s_form']/div[@class='s_form_wrapper soutu-env-nomac soutu-env-index']/form[@id='form']/span[@class='bg s_btn_wr']/input[@id='su']"
预想效果如下:
/html/body/div/div/div/div/div/form/span/input
s = "/html/body/div[@id='wrapper']/div[@id='head']/div[@class='head_wrapper']/div[@class='s_form']/div[@class='s_form_wrapper soutu-env-nomac soutu-env-index']/form[@id='form']/span[@class='bg s_btn_wr']/input[@id='su']"
s_new = ""
# s为原始字符串,s_new为新字符串
k = 0 # 设置一个开关,当为0时,我就拼接,为1时舍去
# 遍历字符串
for a in s:
# 过滤掉中括号里的
if(a == '['):
k = 1;
elif(a == ']'):
k = 0;
continue;
# 符合要求的进行拼接
if(k == 0):
s_new = s_new + a
print(s_new)
运行效果图:
实例二
在实例一的基础上,只保留中括号里为 @id 的部分。
预期效果如下:
/html/body/div[@id='wrapper']/div[@id='head']/div/div/div/form[@id='form']/span/input[@id='su']
中间这样改造一下,当我匹配到左括号时,看看括号后是不是 @id:
k = 0
i = -1 # i是临时加的索引跟踪,判断a的位置
for a in s:
i = i + 1
if(a == '['):
if(s[i:i+4] != "[@id"): # 运用了字符串切片
k = 1;
elif(a == ']' and k == 1):
k = 0;
continue;
if(k == 0):
s_new = s_new + a
运行效果图:
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- ELK+FileBeat+Kafka分布式系统搭建图文教程
- Flink CEP 原理和案例详解
- 实战开发,使用 Spring Session 与 Spring security 完成网站登录改造!!
- 分布式计算框架Gearman原理详解
- 【从0开始の全记录】Flume+Kafka+Spark+Spring Boot 统计网页访问量项目
- 系统级性能分析工具perf的介绍与使用[转]
- 深入理解排序算法
- 用nginx缓存静态文件
- 优雅的玩PHP多进程
- 聊一聊mycat数据库集群系列之双主双重实现
- Fast-SCNN的解释以及使用Tensorflow 2.0的实现
- 基于Spring Boot快速实现发送邮件功能
- 史上最全的vim快捷键文档/手册/大全/帮助/指南
- RPC详解
- 轻松学Pytorch – 行人检测Mask-RCNN模型训练与使用