牛客JS40_判断是否包含数字(indexOf / 正则表达式)
解法1: str.indexOf()
function containsNumber(str) {for(let i=0; i<10; i++){if(str.indexOf(i)!==-1){return true;}}return false;
}
解法2: 正则表达式 test()方法
一、知识点(indexOf / test )
indexOf() - 查找方法 - 数组、字符串通用
str.indexOf(searchString, startIndex):
返回子字符串第一次出现的位置,从startIndex开始查找,找不到时返回-1
str.lastIndexOf(searchString, startIndex):
从右往左查找子字符串,找不到时返回-1
var str="hello world";
console.log(str.indexOf("o")); //4
console.log(str.lastIndexOf("o")); //7
console.log(str.indexOf("o",6)); //7
console.log(str.lastIndexOf("o",6)); //4
正则表达式 && test()方法
定义: 正则表达式即描述字符串规则的表达式
表达式:
/pattern/attrs
/规则/属性
new RegExp(pattern,attrs)
test()方法
regexObj.test(str)
方法:
- 测试正则表达式与指定字符串是否匹配
- 若待测试字符串 (str) 中包含了要测试的字符串 (正则式) 就返回true
1.匹配一段字符串
/123456/.test("123456") //true
/123456/.test("abc123456") //true
/123456/.test("123456abc") //true
/123456/.test("12345") //false
2.锚点:匹配一个位置
- ^:起始位置
- $:结尾位置
- \b:单词边界
/^http/.test("http://www.baidu.com") //true
/^http/.test("ahttp://www.baidu.com") //false
/com$/.test("http://www.baidu.com") //true
/com$/.test("http://www.baidu.comb") //false
/\bis\b/.test("this") //flase 此处的is不是单词
/\bis\b/.test("that is my mom !") //true
3.字符类:匹配一类字符中的一个
[abc]
a或b或c[0-9]
一个数字[^0-9]
非数字的一个字符[a-z]
一个字母.
任一字符(换行符除外)
/[0-9]/.test('123') //true
/[0-9]/.test('abc') //false
/^[0-9]/.test('abc') //false
/[^0-9]/.test('abc') //true
/[a-z]/.test('abc') //true
/./.test('abc') //true
/./.test('1234abc') //true
4.元字符:具有特殊意义的字符
^、$、\b
\d
[0-9]\D
[^\d]
\s
空白符\S
[^\s]
\w
[A-Za-z0-9]
/\d/.test('123') //true
/\D/.test('123') //false
/\D/.test('abc') //true
/\s/.test('1 23') //true
/\S/.test('1 23') //true
/\S/.test(' ') //false
/\w/.test('abc123ABC') //true
5.量词:出现的次数
{m,n}
m 到 n次之间*
0到无穷次?
0次或1次+
1次或1次以上
/\d*/.test('abc') //true
/\d+/.test('abc') //false
/\d+/.test('1abc') //true
/https?/.test('https://www.163.com') //true
/https?/.test('http://www.163.com') //true
/https?/.test('httpss://www.163.com') //false
实例1 - 验证手机号
/^1\d{10}$/.test('17796401352') //ture 匹配手机号
^
表示开头$
表示结尾\d
表示数字{10}
表示前面的\d
有10位,
牛客JS40_判断是否包含数字(indexOf / 正则表达式)相关推荐
- 牛客题霸 [回文数字(palindrome-number)] C++题解/答案
牛客题霸 [回文数字] C++题解/答案 题解: 首先:负数不可以回文(起码看着就不对称) 然后我们将x翻转,很简单sum=sum*10+x%10; 因为x最终会变成0,所以用y先存一下x 最后比较s ...
- 牛客练习赛13-B,幸运数字2
链接: https://www.nowcoder.com/acm/contest/70/B 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524 ...
- 牛客网 牛客练习赛13 A.幸运数字Ⅰ
A.幸运数字Ⅰ 链接:https://www.nowcoder.com/acm/contest/70/A 来源:牛客网 水题. 代码: 1 #include<iostream> 2 #in ...
- 牛客网 牛客练习赛13 C.幸运数字Ⅲ-思维
C.幸运数字Ⅲ 链接:https://www.nowcoder.com/acm/contest/70/C 来源:牛客网 这个题447和477是特殊的,其他的就没什么了. 代码: 1 #include& ...
- 牛客网_PAT乙级_1019. 数字黑洞 (20)
总结 注意!! 想要在函数中结束程序,一定不要用system("pause");,因为这样只是让程序暂停,结果就是运行时间超时,无法通过所有的测试用例. 那么,C++ 程序中什么函 ...
- 牛客13584 日历中的数字
链接:https://ac.nowcoder.com/acm/problem/13584 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 131072K,其他语言2621 ...
- 【js】判断是否包含数字
题目描述 给定字符串 str,检查其是否包含数字,包含返回 true,否则返回 false 示例1 输入 'abc123' 输出 true 1.正则,test function containsNum ...
- 牛客练习赛13-C题幸运数字III
转自一位大佬:http://blog.csdn.net/wyxeainn/article/details/79588812 题目: 链接:https://www.nowcoder.com/acm/co ...
- python判断是否包含数字的成语_Python知识点记录三(正则表达式)
正则表达式 正则表达式是一个特殊的字符序列,可以检测一个字符串是否与我们设定的字符序列相匹配. 一.findall()方法 re模块下的findall()方法可以查找对应字符/字符串 最简单的方法可以 ...
最新文章
- Spring bean 之 FactoryBean
- 使用mne进行脑电信号分析
- AngularJS+Satellizer+Node.js+MongoDB-Instagram-20
- mfc怎么计算字符串宽度_Python基础之好玩的字符串格式化f-string格式
- 思科(Cisco)路由器策略路由配置详解
- android studio -genymotion神奇错误
- python实现rpc框架_使用Python实现RPC框架
- CoreAnimation编程指南(七)图层Action
- hue是不是集成了oozie_在hue里面集成spark2,使用oozie的调度
- 0动态规划中等 LeetCode97. 交错字符串
- edptrayicon怎么卸载_谁知道怎样删除北信源内网管理软件客户端?
- AT91SAM9260搭建LINUX操作系统
- Android应用调用第三方地图应用导航
- 举个栗子!Tableau 技巧(109):用 LOD 计算产品销售周期
- 关于Floyd算法 和 Dijkstra算法
- 矩阵相乘的理解(矩阵相乘的几何意义)及证明过程
- 2020深圳杯B题论文
- utorrent设置上传速度_设置好uTorrent让你的下载速度飞起来......
- 零基础入门CV赛事- 街景字符编码识别
- oracle rac linux下安装