键盘接收一个字符串,判断其是不是是尾号 5 连的手机号?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了键盘接收一个字符串,判断其是不是是尾号 5 连的手机号?相关的知识,希望对你有一定的参考价值。
规则: 第 1 位是 1,第二位可以是数字 358 其中之一,后面 4 位任意数字,最后 5 位为任意相同的数字。例如:18601088888、13912366666 则满足要求。
参考技术A//写了一个C,那我写一个java吧,仅供参考
参考技术B #include<string.h>#include<stdio.h>
main()
char a[40]; //定义一个存放待判断的字符数组
int i=0,len;
printf("please input your string :(length<40):");
gets(a); //逐个读取a 数组中的字符
len=strlen(a); //计算字符串的长度
for(i=0;i<(len-1)/2;i++)
if(a[i]!=a[len-1-i])//逐个将两端的字符进行比较 如第一个与最后一个比较 第二个与倒数第二个比较 如不同 则跳出循环
break;
if(i==(len-1)/2)// 如i已经自加至字符串的中间位置 则表示是回文 如 没有 则不是
printf("Yes");
else
printf("No");
这程序 我粗略写的 没有运行 你运行试一下 参考技术C 这个您是这样的一个字符串,实际上跟手机号码是没有任何联系的。 参考技术D 键盘接收一个字符串,判断其是否是尾号 5 连的手机号 第5个回答 2020-01-06 键盘接收一个字符串号,判断是否尾号5连接的手机号,这无法判断。
java写一个正则表达式,可以匹配尾号5连的手机号.规则: 第1位是1,第二位可以是数字3458其中之一,后面4位任
1[3458]\\d41 匹配 1
[3458] 匹配 3 4 5 8 任意一个
\\d4 匹配 4个0-9 参考技术A (?<!\d)1[3458][0-9]4([0-9])\14(?!\d)
以上为我写的正则表达式
import java.util.regex.*;
Pattern p = Pattern.compile("(?<!\\d)1[3458][0-9]4([0-9])\\14(?!\\d)");
Matcher m = p.matcher(要查找的文本字符串);
boolean found = m.find();
if( found )
String foundstring = m.group();
int beginPos = m.start();
int endPos = m.end();
上面的代码不是我写的
以上是关于键盘接收一个字符串,判断其是不是是尾号 5 连的手机号?的主要内容,如果未能解决你的问题,请参考以下文章
从键盘中输入一个数,判断其是不是是5的倍数而不是7的倍数。如果是,输出yes,否则输出no。
用java编写实现从键盘输入一个字符串,判断其是不是为浮点数?
从键盘输入一个正整数,判断其是不是既为3又是5的整倍数。若满足条件,输出“满足条件!”,