NP102. 提取数字电话
描述
牛牛翻看以前记录朋友信息的电话薄,电话号码几位数字之间使用-间隔,后面还接了一下不太清楚什么意思的英文字母,你能使用正则匹配re.sub将除了数字以外的其他字符去掉,提取一个全数字电话号码吗?输入描述
输入一行字符串,字符包括数字、大小写字母和-输出描述
输出该字符串提取后的全数字信息。示例1
输入:
2022-063-109NiuMei
输出:
2022063109
C++ 解法, 执行用时: 3ms, 内存消耗: 460KB, 提交时间: 2022-07-30
#include<iostream> #include<string> using namespace std; int main(){ string s; char c; while(cin>>c){ if(c>='0'&&c<='9') s.push_back(c); } cout<<s; }
Python 解法, 执行用时: 15ms, 内存消耗: 3040KB, 提交时间: 2022-08-04
import re phone_input = raw_input() print(re.sub('[^\d]', '', phone_input))
Python 3 解法, 执行用时: 30ms, 内存消耗: 4480KB, 提交时间: 2022-07-28
import re str = input() print(''.join(re.findall(r'\d+',str)))
Python 3 解法, 执行用时: 30ms, 内存消耗: 4492KB, 提交时间: 2022-07-28
import re s = input() res = re.sub(r'[a-zA-z]+','',s) print(res.replace('-',''))
Python 3 解法, 执行用时: 30ms, 内存消耗: 4516KB, 提交时间: 2022-08-03
import re s=input() result=re.sub(r'[^\d]','',s) print(result)