0

0

字符串的各种方法和案例

墨辰丷

墨辰丷

发布时间:2018-06-04 16:34:34

|

2098人浏览过

|

来源于php中文网

原创

本篇文章主要介绍字符串的各种方法和案例,感兴趣的朋友参考下,希望对大家有所帮助。

代码如下:

'''字符串:是以单引号或双引号括起来的任意文本,
‘abc’"def"
字符串不可变
'''
#创建字符串
str1 = "sunck is a good man!"
str2 = "sunck is a nice man!"
#字符串运算
#字符串连接,字符串不可变
str3 = "sunck"
str4 = "is a man"
str5 = str3 + str4
print(str5)
#输出重复字符串
str6 = "hello"
str7 = str6 * 3
print(str7)
#访问字符串中的某一个字符
#通过索引下标查找字符,从0开始   字符串名[下标]
str8 = "sunck is a nice man!"
print(str8[1])
#截取字符串,包含前面的6,不包含15[6,15),
str9 = "sunck is a nice man!"
str10 = str9[6:15]
str11 = str9[:6]#从头截取
str12 = str9[16:]#从给定下标处截取到最后
print(str10)
#判断有没有需要的字符
str13 = "sunck is a nice man!"
print("good" in str13)#false
print("good" not in str13)#true
#格式化输出
num = 10
print("num = %d" % (num))#%d占位符, num替换%d,%d表示整数
str14 = "sunck is a nice man!"
f = 3.14
print("str14 = %s\nf = %.3f" % (str14,f))
#字符串替换用%s代替,浮点用%f表示(%.3f 精确到小数点后三位,会四舍五入)
#\n换行
#转义字符
'''
\:将一些字符转换成有特殊含义的字符
\\:表示一个“\”
\t:制表符(四个空格)
r:如果字符串里有好多字符串都需要转义,允许用r表示内部的字符串默认不转义
'''
print("hello \\ world")
print('hello \'world\'')
print("hello 'world'")
#如果字符串内有很多换行,用\n不好阅读
print('''
hello
world
''')#三引号可以换行
print("hello\tworld")
#打印\\\t\\
print(r"\\\t\\")
#eval()
'''
功能:将字符串str当成有效的表达式来求值,并返回计算结果
'''
num1 = eval("123")#转为整数
print(eval("1+23"))#自动计算,字母不可计算
#len(str)
'''
返回字符串的长度
'''
print(len("hello world"))#长度看字符个数
#str.lower
'''
转换字符串中的大写字母为小写字母
'''
str15 = "suncK is a good man"
print(str15.lower())
#str.upper()  转换字符串中的小写字母为大写字母
str16 = "suncK is a good man"
print(str16.upper())
#str.swapcase 转换字符串中大写字母为小写字母,小写字母为大写字母。
print("suncK is a good man".swapcase())
#str.capitalize() 首字母大写
print("suncK is a good man".capitalize())
#str.title() 每个单词的首字母大写
print("suncK is a good man".title())
#center(width[,fillchar])
#返回一个指定宽度的居中字符串,fillchar为填充的字符串(默认空格填充)
print("suncK is a good man".center(40,"*"))
#ljust(width[,fillchar])
#返回一个指定宽度的左对齐字符串,fillchar为填充的字符串(默认空格填充)
print("suncK is a good man".ljust(40),"%")
#rjust(width[,fillchar])
#返回一个指定宽度的右对齐字符串,fillchar为填充的字符串(默认空格填充)
print("suncK is a good man".rjust(40),"%")
#zfill(width)
#返回一个长度为width的字符串,原字符串右对齐,前面补0。
print("suncK is a good man".zfill(40))
#count(str[,start][,end])
#返回str字符串中str的出现的次数,可以指定一个范围,默认全部
print("suncK is a good good man".count("good",15,len("suncK is a good good man")))
#find(str[,start][,end])
#从左到右,检测str字符串是否包含在字符串中,可以指定范围,默认从头到尾,
#返回的是第一次开始的下标,没有返回-1
print("suncK is a good good man".find("good"))
print("suncK is a good good man".find("good",15,len("suncK is a good good man")))
#rfind(str[,start][,end])
#从右向左检测
print("suncK is a good good man".rfind("good"))
#index(str,start = 0,end = len(str))
#跟find方法基本一样,如果str不存在会报异常
print("suncK is a good good man".index("good"))
#rindex(str,start = 0,end = len(str))
#与rfind方法一样,当不存在时会报异常
print("suncK is a good good man".rindex("good"))
#lstrip()
#截掉字符串左侧指定字符,默认空格
print("*suncK is a good good man".lstrip("*"))
#rstrip()
#截掉字符串右边的字符,默认空格
print("*suncK is a good good man*".rstrip("*"))
#strip()
#截掉两边的指定内容,默认空格
print("**suncK is a good good man**".strip("*"))
str17 = "a"
print(ord(str17))
#输出ASCII值
#字符串比较大小
#从第一个字符开始比较,谁的ASCII的值大就大,如果相等
#就比较下一个字符,谁的值大谁就大
print("mszzz" < "ms") # \0 ASCII:0
#split(str = "",num) 以str为分隔符截取字符串,指定num,则仅截取num个字符
str18 = "sunck  is     good   man"
list1 = str18.split(" ")
#print(str18.split(" ",3))
c = 0
for s in list1:
    if len(s) > 0:
        c += 1
print(c)
#splitlines(keepends)  按照(\r, \r\n, \n)分割,返回一个作为
#keepends == True 会保留换行符,默认false(不保留换行符)
str19 = '''
sunck is a good man!
sunck is a nice man!
'''
print(str19.splitlines(True))#true带着换行符输出
#join() 以一个特定的字符串分隔符,将seq中的所有元素组合成一个字符串
list2 = ['sunck','is','a','good','man']
str20 = " ".join(list2)
print(str20)
#max() min()
str21 = "sunck is a good man z"
print(max(str21))
print(min(str21))
#replace(oldstr,newstr,count)
# 用newstr替换oldstr,默认全部替换,如果制定了count,那只替换count个
str22 = "sunck is a good man"
str23 = str22.replace("good","nice",1)#good要替换的单词,nice替换成,1替换第几个
print(str23)
#maketrans() 创建字符串的映射表
'''
oldstr要转换的字符串
newstr要转换的字符串
'''
t24 = str.maketrans("sunck","kaige")
#将s对应成k,以此类推
str25 = "sunck is a good man"
str26 = str25.translate(t24)
print(str26)
#startswith(str,start = 0,end = len(str))
#判断是否以str开头
str27 = "sunck is a good man "
print(str27.startswith("sunck",5,16))
#endswith(str,start = 0,end = len(str))
#在给定的范围内判断是否已给定的字符串开头,如果没有指定范围,默认整个字符串
str28 = "sunck is a good man "
print(str28.endswith("man"))
#encode(encoding="utf-8",errors="strict")
#编码
#str29 = "sunck is a good man"
str29 = "sunck凯 is a good man"
data30 = str29.encode("utf-8","ignore")
#ignore 忽略错误
print(data30)
#解码  注意:要与编码时的编码格式一致
str31 = data30.decode("utf-8")
print(str31)
#isalpha() 如果字符串中至少一个字符且所有的字符都是字母返回True
#f否则为false
str32 = "sunck is a good man"
print(str32.isalpha())
#isalnum()
#如果字符串中至少有一个字符且所有的字符都是字母或数字返回true
#否则返回false
str33 = "123"
print(str33.isalnum())
#isupper()
#如果字符串中至少有一个英文字符且所有的字符都是大写的英文字母返回true,否则返回false
print("ABC".isupper())#返回True
print("ABC1".isupper())#返回True
print("1".isupper())#返回false
print("acn".isupper())#返回false
print("ABC#".isupper())#返回true
#islower()
#如果字符串中至少有一个英文字符且所有的字符都是小写的英文字母返回true
print("abc".isupper())#返回True
print("abc1".isupper())#返回True
print("1".isupper())#返回false
print("ABC".isupper())#返回false
print("abc#".isupper())#返回true
#istitle()
#如果字符串是标题化的返回True,否则返回false
print("sunck is".istitle())#返回false
print("Sunck Is".istitle())#返回True
#isdigit()
#如果字符串只包含数字字符,返回true,否则返回false
print("123".isdigit())#返回true
print("123a".isdigit())#返回false
#isnumeric()
#如果字符串只包含数字字符,返回true,否则返回false
print("123".isdigit())#返回true
print("123a".isdigit())#返回false
#isdecimal()
##如果字符串只包含10进制字符,返回true,否则返回false
print("123".isdigit())#返回true
print("123a".isdigit())#返回false
#
#如果字符中只包含空格返回True,否则返回false
print(" ".isspace())
print("\t".isspace())#True
print("\n".isspace())#true
print("\r".isspace())#true

总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助。

相关推荐:

PHP判断字符串长度的两种方法

php字符串的替换,分割和连接方法图文详解

海霆企业网站系统(HT-EWCMS)1.1
海霆企业网站系统(HT-EWCMS)1.1

HT-EWCMS 为 Hetty - Enterprise Web Content Management System 的英文缩写,即海霆企业网站内容管理系统,HT-EWCMS为您提供一个高效快速和强大的企业网站解决方案,兼容各种主流操作系统和浏览器。HT-EWCMS著作权已在中华人民共和国国家版权局注册,海霆科技为 HT-EWCMS 产品的开发商,依法独立拥有 HT-EWCMS 产品著作权,著作

下载

php字符串操作针对负值的判断实例分析

相关专题

更多
Java 桌面应用开发(JavaFX 实战)
Java 桌面应用开发(JavaFX 实战)

本专题系统讲解 Java 在桌面应用开发领域的实战应用,重点围绕 JavaFX 框架,涵盖界面布局、控件使用、事件处理、FXML、样式美化(CSS)、多线程与UI响应优化,以及桌面应用的打包与发布。通过完整示例项目,帮助学习者掌握 使用 Java 构建现代化、跨平台桌面应用程序的核心能力。

37

2026.01.14

php与html混编教程大全
php与html混编教程大全

本专题整合了php和html混编相关教程,阅读专题下面的文章了解更多详细内容。

19

2026.01.13

PHP 高性能
PHP 高性能

本专题整合了PHP高性能相关教程大全,阅读专题下面的文章了解更多详细内容。

37

2026.01.13

MySQL数据库报错常见问题及解决方法大全
MySQL数据库报错常见问题及解决方法大全

本专题整合了MySQL数据库报错常见问题及解决方法,阅读专题下面的文章了解更多详细内容。

19

2026.01.13

PHP 文件上传
PHP 文件上传

本专题整合了PHP实现文件上传相关教程,阅读专题下面的文章了解更多详细内容。

16

2026.01.13

PHP缓存策略教程大全
PHP缓存策略教程大全

本专题整合了PHP缓存相关教程,阅读专题下面的文章了解更多详细内容。

6

2026.01.13

jQuery 正则表达式相关教程
jQuery 正则表达式相关教程

本专题整合了jQuery正则表达式相关教程大全,阅读专题下面的文章了解更多详细内容。

3

2026.01.13

交互式图表和动态图表教程汇总
交互式图表和动态图表教程汇总

本专题整合了交互式图表和动态图表的相关内容,阅读专题下面的文章了解更多详细内容。

45

2026.01.13

nginx配置文件详细教程
nginx配置文件详细教程

本专题整合了nginx配置文件相关教程详细汇总,阅读专题下面的文章了解更多详细内容。

9

2026.01.13

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Swoft2.x速学之http api篇课程
Swoft2.x速学之http api篇课程

共16课时 | 0.9万人学习

PHP基础入门课程
PHP基础入门课程

共33课时 | 1.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号