如何检查字符串是否包含字母?
How to check if a string contains letters?
我有一个数字字符串,有时它包含字母。我必须从我的输入字符串中删除字母和之后的所有内容。
我试过:
import re
b = re.split('[a-z]|[A-Z]', a)
b = b[0]
但是当字符串不包含字母时,这个 returns 错误。
我是否需要在尝试拆分之前检查 a
是否包含字母?
如何检查?
两个例子:
a = '1234'
和
a = '1234h'
我想在两个
之后都有b = '1234'
另一个例子:
我想要 a= '4/200, 3500/ 500 h3m'
或 a= '4/200, 3500/ 500h3m'
return 类似于:
b= ['4', '200', '3500', '500']
list = ['1234abc' , '5278', 'abc58586']
def range_sanitizer(s, lower_bound, upper_bound):
return ''.join([x for x in s if lower_bound < x < upper_bound])
def remove_non_digits(s):
return range_sanitizer(s, '0', '9')
def sanitize_list(list, sanitizer=remove_non_digits):
return [sanitizer(item) for item in list]
if '__main__' == __name__:
sanitized_list=sanitize_list(list)
# ['1234', '5278', '58586']
print(sanitized_list)
import re
match = re.search('^[\d]+', '1234h')
if match:
print(match.group(0))
它将 return '1234' 用于 '1234' 和 '1234h'。
它在开始后查找一系列数字并在字母后忽略。
我有一个数字字符串,有时它包含字母。我必须从我的输入字符串中删除字母和之后的所有内容。 我试过:
import re
b = re.split('[a-z]|[A-Z]', a)
b = b[0]
但是当字符串不包含字母时,这个 returns 错误。
我是否需要在尝试拆分之前检查 a
是否包含字母?
如何检查?
两个例子:
a = '1234'
和
a = '1234h'
我想在两个
之后都有b = '1234'
另一个例子:
我想要 a= '4/200, 3500/ 500 h3m'
或 a= '4/200, 3500/ 500h3m'
return 类似于:
b= ['4', '200', '3500', '500']
list = ['1234abc' , '5278', 'abc58586']
def range_sanitizer(s, lower_bound, upper_bound):
return ''.join([x for x in s if lower_bound < x < upper_bound])
def remove_non_digits(s):
return range_sanitizer(s, '0', '9')
def sanitize_list(list, sanitizer=remove_non_digits):
return [sanitizer(item) for item in list]
if '__main__' == __name__:
sanitized_list=sanitize_list(list)
# ['1234', '5278', '58586']
print(sanitized_list)
import re
match = re.search('^[\d]+', '1234h')
if match:
print(match.group(0))
它将 return '1234' 用于 '1234' 和 '1234h'。 它在开始后查找一系列数字并在字母后忽略。