首页 > 其他分享 >字符串及正则表达式

字符串及正则表达式

时间:2022-10-07 23:36:02浏览次数:46  
标签:about format 正则表达式 2d print item 字符串 match

实例1、使用字符串拼接输出一个关于程序员的笑话

programmer_1='程序员甲:搞IT太辛苦了,我想换行......怎么办?'
programmer_2='程序员乙:敲一下回车键'
print(programmer_1+'\n'+programmer_2)

 

 实例2、截取身份证号码中的出生日期

programmer_1='你知道我的生日吗?'
print('程序员甲说:',programmer_1)
programmer_2='输入你的身份证号码。'
print('程序员乙说:',programmer_2)
idcard='123456199006277890'
print('程序员甲说:',idcard)
birthday=idcard[6:10]+'年'+idcard[10:12]+'月'+idcard[12:14]+'日'
print('程序员乙说:','你是'+birthday+'出生的,所以你的生日是'+birthday[5:])

 

 实例3、输出被@的好友名称

str1='@明日科技 @扎克伯格 @俞敏洪'
list1=str1.split(' ')
print('您@的好友有:')
for item in list1:
print(item[1:])

 

 实例4、通过好友列表生成全部被@的好友

list_friend=['明日科技','扎克伯格','俞敏洪','马云','马化腾']
str_friend='@'.join(list_friend)
at='@'+str_friend
print('你要@的好友:',at)

 

 实例5、不区分大小写验证会员名是否唯一

username_1='|MingRi|mr|mingrisoft|WGH|MRSoft|'
username_2=username_1.lower()
regname_1=input('输入要注册的会员名称:')
regname_2='|'+regname_1.lower()+'|'
if regname_2 in username_2:
print('会员名',regname_1,'已经存在!')
else:
print('会员名',regname_1,'可以注册!')

 

 

 

 

 实例6、格式化不同的数值类型数据

import math
print('1251+3950的结果是(以货币形式显示):¥{:,.2f}元'.format(1251+3950))
print('{0:.1f}用科学计数法表示:{0:E}'.format(120000.1))
print('π取5位小数:{:.5f}'.format(math.pi))
print('{0:d}的16进制结果是:{0:#x}'.format(100))
print('天才是由{:.0%}的灵感,加上{:.0%}的汗水。'.format(0.01,0.99))

 

 实例7、验证输入的手机号码是否为中国移动的号码

import re
pattern=r'(13[4-9]\d{8})$|(15[01289]\d{8})$'
mobile='13634222222'
match=re.match(pattern,mobile)
if match==None:
print(mobile,'不是有效的中国移动手机号码。')
else:
print(mobile,'是有效的中国移动手机号码。')
mobile='13144222221'
match=re.match(pattern,mobile)
if match==None:
print(mobile,'不是有效的中国移动手机号码。')
else:
print(mobile,'是有效的中国移动手机号码。')

 

 实例8、验证是否出现危险字符

import re
pattern='r(黑客)|(抓包)|(监听)|(Trojan)'
about='我是一名程序员,我喜欢看黑客方面的图书,想研究一下Trojan。'
match=re.search(pattern,about)
if match==None:
print(about,'@安全!')
else:
print(about,'@出现了危险词汇!')
about='我是一名程序员,我喜欢看计算机网络方面的图书,喜欢开发网站。'
match=re.match(pattern,about)
if match==None:
print(about,'@安全!')
else:
print(about,'@出现了危险词汇!')

 

 实例9、替换出现的危险字符

import re
pattern=r'(黑客)|(抓包)|(监听)|(Trojan)'
about='我是一名程序员,我喜欢看黑客方面的图书,想研究一下Trojan。\n'
sub=re.sub(pattern,'@_@',about)
print(sub)
about='我是一名程序员,我喜欢看计算机网络方面的图书,喜欢开发网站。'
sub=re.sub(pattern,'@_@',about)
print(sub)

 

 实例10、输出被@的好友名称(应用正则表达式)

import re
str1='@明日科技 @扎克伯格 @俞敏洪'
pattern=r'\s*@'
list1=re.split(pattern,str1)
print('您@的好友有:')
for item in list1:
if item !="":
print(item)

 

 实战1、打印象棋口诀

str1='马走日,'
str2='象走田,'
str3='车走直路炮翻山,'
str4='士走斜线护将边,'
str5='小卒一去不回还。'
print('象棋口诀:\n'+str1+'\n'+str2+'\n'+str3+'\n'+str4+'\n'+str5)

 

 

 实战2、判断车牌归属地

a=["津A·12345","沪A·23456","京A·34567"]
for index,item in enumerate(a):
print("第"+str(index+1)+"张车牌号码:\n"+item)
if item[0:1]=="津":
b="天津"
print("这张号牌的归属地:",b)
elif item[0:1]=="沪":
b="上海"
print("这张号牌的归属地:",b)
elif item[0:1]=="京":
b="北京"
print("这张号牌的归属地:",b)

 

 实战3、模拟微信抢红包

import random
import decimal
print('---------------模拟微信抢红包---------------')
a = input("请输入要装入红包的总金额(元):")
b = int(input("请输入红包的个数(个):"))
a1= decimal.Decimal(a)
for num in range(1,b+1):
if num == b:
h= a1
else:
h= a1/2*decimal.Decimal(str(random.random()))
h = h.quantize(decimal.Decimal('0.00'))
a1= a1 - h
print('第%d个红包:%s' %(b,str(h))+"元")

 

 实战4、显示实时天气预报

print("{:d}年{:0>2d}月{:0>2d}日\t天气预报:{:s}\t{:d}℃~{:d}℃\t{:s}转{:s}{:s}".format(2018,4,17,"晴",20,7,"微风","西风","3`4级"))
print("{:0>2d}:{:0>2d}\t天气预报:{:s}\t{:d}℃\t{:s}{:s}".format(8,0,"晴",13,"微风",""))
print("{:0>2d}:{:0>2d}\t天气预报:{:s}\t{:d}℃\t{:s}{:s}".format(12,0,"晴",19,"微风",""))
print("{:0>2d}:{:0>2d}\t天气预报:{:s}\t{:d}℃\t{:s}{:s}".format(16,0,"晴",18,"西风","3`4级"))
print("{:0>2d}:{:0>2d}\t天气预报:{:s}\t{:d}℃\t{:s}{:s}".format(20,0,"晴",15,"西风","3`4级"))
print("{:0>2d}:{:0>2d}\t天气预报:{:s}\t{:d}℃\t{:s}{:s}".format(00,0,"晴",12,"微风","",""))
print("{:0>2d}:{:0>2d}\t天气预报:{:s}\t{:d}℃\t{:s}{:s}".format(4,0,"晴",9,"微风","",""))

 

标签:about,format,正则表达式,2d,print,item,字符串,match
From: https://www.cnblogs.com/666u/p/16767507.html

相关文章

  • 算法练习-第十天【字符串】
    字符串459.重复的子字符串参考:代码随想录思考判断一个字符串s是否包含子串,可以将2个s首尾相连,组合成t=s+s(剔除首尾字符),如果字符串s存在字串,那么t一定存在字符串s。......
  • 第五章 字符串及正则表达式
    实例01使用字符串拼接输出一个关于程序员的笑话点击查看代码programmer_1='程序员甲:搞IT太辛苦了,我想换行......怎么办?'programmer_2='程序员乙:敲一下回车键'prin......
  • 二进制加法,二进制数以字符串形式保存,最终返回字符串
    思路:先将字符串反转,用max()选出两个字符串中长的那个,短的补位0,从低位到高位计算,进位初始值0,计算时每次遍历结果为(进位+a[i]+b[i])%2,进位改为(进位+a[i]+b[i])/2,字符串全部......
  • Oracle正则表达式函数:regexp_like、regexp_substr、regexp_instr、regexp_replace
    Oracle使用正则表达式离不开这4个函数:1、regexp_like2、regexp_substr3、regexp_instr4、regexp_replace看函数名称大概就能猜到有什么用了。regexp_like只能用于条件表达......
  • 基本数据类型和字符串互转
      常用sprintf函数,用于其他类型转字符串:  例子:  简单理解一下sprintf的用法即可  注意,其中  a和b之间会输出空格,因为%d%d之间有空格,他们之间有什么......
  • 字符串函数
    常用三类系统函数:1)字符串;2)时间;3)数学1)头文件<string.h>,找C标准库参考手册看即可,里面包含众多C标准库–<string.h>|菜鸟教程(runoob.com)此处提供一个链接仅供参考......
  • Java实现rtrim功能,批量删除字符串指定末尾的字符串
    publicstaticStringremoveEndLoop(Stringstr,Stringremove){if(StringUtils.isBlank(str)||StringUtils.isBlank(remove)){returnstr;}......
  • 【数据结构和算法】LeetCode,初级算法-14字符串中的第一个唯一字符
    截止到目前我已经写了600多道算法题,其中部分已经整理成了pdf文档,目前总共有1000多页(并且还会不断的增加),大家可以免费下载下载链接:​​https://pan.baidu.com/s/1hjwK0ZeRxY......
  • 最优雅的Java字符串拼接是哪种方式?
    titleshortTitlecategorytagdescriptionhead最优雅的Java字符串拼接是哪种方式?Java字符串拼接Java核心数组&字符串Java程序员进阶之路,小白......
  • ABAP语法笔记09 - 字符串处理
    "截取LV_FIELD+X(Y)"标识从第X位截取到Y位字符,当Y为*时,从第X为截取后面所有的字符"分割SPLITLV_FIELDAT'&'INTOLV_FIELD1LV_FIELD2."表示通过字符&分割......