这应该很容易。我的主机名例如:
hostfoo1234.blah.com
hostbar9999.blah.com
hostbazz0489.blah.com
遇到第一个数字(包括第一个数字)后,如何使用正则表达式删除所有内容?第一个数字可以是0-9。输出应为:
hostfoo
主机栏
hostbazz
谢谢!
答案 0 :(得分:1)
没有正则表达式
def removeAfterFirstNumber(hostname):
res = []
for i in range(0,len(hostname)):
if hostname[i].isdigit()is not True:
res.append(hostname[i])
else:
break
return "".join(res)
a="hostbazz0489.blah.com"
print (removeAfterFirstNumber(a))
## output
hostbazz
或使用re库
import re
def removeAfterFirstNumber(hostname):
m = re.search("\d", hostname)
return hostname[:m.start()] if m else hostname
a="hostbazz0489.blah.com"
print (removeAfterFirstNumber(a))
## output
hostbazz