键盘接收一个字符串,判断其是不是是尾号 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]\\d4
1 匹配 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编写实现从键盘输入一个字符串,判断其是不是为浮点数?

java 判断从键盘上任意输入的一个年份是不是为闰年

从键盘输入一个正整数,判断其是不是既为3又是5的整倍数。若满足条件,输出“满足条件!”,

编程:从键盘输入一个数,判断是不是既是三的倍数又是七的倍数!

java通过键盘输入任一个整数,判断其是不是是素数,并输出判断结果。