Java实现短信中提取号码
Description
提取一条短信里所有的电话号码,电话号码之间换行打印,短信的内容由用户输入。
Input
第一行有个整数n(1≤n≤1000)表示测试用例的个数。其后的每一行中有一条短信,每一条短信中只包含字母、数字、空格、标点符号,没有回车换行符,短信的长度不超过400个英文字符。
Output
将每条短信中的电话号码提取出来。每个号码占一行。如果该短信中没有电话号码,请输出“no phone numbers!” 每个测试用例的输出之间用一个空行隔开。
(提示:利用数据输入读取一行信息,然后利用String的方法将字符串转换成一个字符数组,再提出数字,连续的数都可以认为是电话号码)
Sample Input
2
Mr Zhang's home phone is 073112345678, and his office phone is 87654321, his mobile phone is 13812345678
Sorry, I don't have his any phone numbers!
Sample Output
073112345678
87654321
13812345678
no phone numbers!
法一:
import java.util.Scanner;
public class p3 {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
String s=in.nextLine();
for (int j = 0; j < n; j++)
{ s = in.nextLine();
boolean b = true;
for (int i = 0; i < s.length(); i++)
{ if (s.charAt(i)>='0'&&s.charAt(i)<='9')
{ b = false;
System.out.print(s.charAt(i));
if (i == s.length() -1 || (s.charAt(i + 1) < '0' || s.charAt(i + 1) > '9'))
{ System.out.println(); }
}
}
if (b)
{ System.out.println("no phone numbers!"); }
System.out.println(); }
}
}
法二:
public class p3 {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
String s=in.nextLine();
for (int j = 0; j < n; j++)
{ s = in.nextLine();
boolean b = true;
char str[]=s.toCharArray();
for (int i = 0; i < s.length(); i++)
{ if (str[i]>='0'&&str[i]<='9')
{ b = false;
System.out.print(str[i]);
if (i == str.length -1 || (str[i + 1] < '0' || str[i + 1] > '9'))
{ System.out.println(); }
}
}
if (b)
{ System.out.println("no phone numbers!"); }
System.out.println(); }
}
Java实现短信中提取号码的更多相关文章
- java pdu短信解码
java pdu短信解码 长短信未验证 有兴趣的可以试试 根据python的方法改写的 /** * PDU短信解析 * * * @param pduPayload * @return */ publi ...
- 【Java】短信信息提取设计
问题产生:当有要求做信息有效性校验的时候,如何提取短信中有用的信息? 举个例子:有这样一条短信消息: [XXXXXX提醒]尊敬的客户,截止03月21日15:29,您本月套餐中包含手机上网国内流量累计1 ...
- 解决:People下面选择分享可见联系人,选择多个联系人后通过短信分享,短信中只显示一个联系人
问题描述: [操作步骤]:People下导入导出中选择分享可见联系人,选择多个联系人后通过短信分享 [测试结果]:短信中只能显示一个联系人 [预期结果]:可以显示多个联系人 经过代码分析,从compo ...
- Java应用短信猫
首先确定短信猫正常连接到主机,并安装SIM卡.先用超级终端测试短息猫能不能用.安装minicom:#sudo apt-get install minicom安装完成后,执行#sudo minicom ...
- java发送短信验证码
业务: 手机端点击发送验证码,请求发送到java服务器端,由java调用第三方平台(我们使用的是榛子云短信http://smsow.zhenzikj.com)的短信接口,生成验证码并发送. SDK下载 ...
- Java 发送短信
这是一个调用sms接口发短信的程序,支持同时发送的短信量并不是很大,只作为学习使用(当然如果你想内部使用也行) 源码:package com; import org.apache.commons.ht ...
- java对接短信平台
短信验证码目前是比较主流验证身份的一种方式,下面分享下我对接的几种短信平台 阿里云短信:https://api.alidayu.com/docs/api.htm?spm=a3142.7395905.4 ...
- 基于springboot实现Java阿里短信发送
1.接口TestController import java.util.Random; import com.aliyuncs.DefaultAcsClient; import com.aliyunc ...
- java发送短信--httpclient方式
最近头让我写个发送短信的java程序检测BI系统,检查数据库是否有异常发送,有则发送短信到头的手机里.这里我直说httpclient方式的get请求方式,并且已经有方式的短信的接口了,所以只要再加上参 ...
随机推荐
- [luoguP2885] [USACO07NOV]电话线Telephone Wire(DP + 贪心)
传送门 真是诡异. 首先 O(n * 100 * 100) 三重循环 f[i][j] 表示到第 i 个柱子,高度是 j 的最小花费 f[i][j] = min(f[i - 1][k] + abs(k ...
- mysql和Oracle 备份表
1.SQL Server中,如果目标表存在: insert into 目标表 select * from 原表; 2.SQL Server中,,如果目标表不存在: select * into 目标表 ...
- [bzoj2882]工艺_后缀数组
工艺 bzoj-2882 题目大意:题目链接. 注释:略. 想法: 跟bzoj1031差不多啊. 把串倍长后扫$sa$数组. 最后再统计答案即可. Code: #include <iostrea ...
- CODEFORCES problem 105A.Transmigration
题目本身上手并不难,字符串处理+简单的排序.要注意的地方是浮点数的处理. 依据计算机中浮点数的表示原理,在实际编程的过程中即使用一个确定的整数(假设是1)给一个浮点变量赋值 在查看变量时会发现实际存储 ...
- CCCC2017大区赛补完
L2-2 多项式除法 这题看懂题意就是个模拟 L3-2 周游世界 想法是相邻点连边,然后跑最短路,当最短路相同时候,比较之前经过的换乘数,取最小的作为方案 但是这样只过了2个点……? 网上dalao们 ...
- sql语句执行的很慢
一个 SQL 执行的很慢,我们要分两种情况讨论: 1.大多数情况下很正常,偶尔很慢,则有如下原因 (1).数据库在刷新脏页,例如 redo log 写满了需要同步到磁盘. (2).执行的时候,遇到锁, ...
- operamasks-omGrid的使用
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="personTab.aspx ...
- Ionic3 填坑记录 - java.lang.RuntimeException: java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex
1 错误:Unable to merge dex 执行打包命令时 ionic cordova build android --prod 报如下错误 2 原因 重复引用了同一个包 如上图所示, com ...
- Port forwarding with xinetd Ask
https://stackoverflow.com/questions/21716673/port-forwarding-with-xinetd --------------------------- ...
- MapReduce Cross 示例
MapReduce Cross 示例 package com.bsr.cross; import java.io.IOException; import org.apache.hadoop.conf. ...