我在Javascript上有这个正则表达式
var myS = "00 - ??:??:?? - a";
var removedTL = myS.match(/^(\d\d) - (\?\?|10|0\d):(\?\?|[0-5]\d):(\?\?|[0-5]\d) - (.*)/);
Run Code Online (Sandbox Code Playgroud)
如果myS不是那种格式,我需要返回"false" ,否则返回true.
我的意思是 :
var myS = "00 - ??:??:?? - a"; // TRUE
var myS = "00 - ??:?:?? - a"; // FALSE
Run Code Online (Sandbox Code Playgroud)
如何检查正则表达式是否与字符串匹配?
Lig*_*ica 106
这里的函数可能更合适RegExp.test,它明确地给出了true或false.
console.log(/lolcakes/.test("some string"));
// Output: false
console.log(/lolcakes/.test("some lolcakes"));
// Output: true
Run Code Online (Sandbox Code Playgroud)
use*_*716 19
使用双逻辑NOT运算符.
return !!removedTL;
Run Code Online (Sandbox Code Playgroud)
这将转换为true/false取决于是否找到匹配.
没有匹配给你null,转换为false.
一个或多个匹配为您提供一个转换为的数组true.
作为替代方案,您可以使用.test()而不是.match().
/^(\d\d) - (\?\?|10|0\d):(\?\?|[0-5]\d):(\?\?|[0-5]\d) - (.*)/.test( myS );
Run Code Online (Sandbox Code Playgroud)
...直接给你一个布尔结果.
Les*_*nks 15
如果没有匹配,match则返回该方法null.
var myS = "00 - ??:??:?? - a";
var patt = new RegExp("^(\d\d) - (\?\?|10|0\d):(\?\?|[0-5]\d):(\?\?|[0-5]\d) - (.*)");
var removedTL = patt.test(myS);
Run Code Online (Sandbox Code Playgroud)
如果匹配,removedTL 将保存一个布尔值 true,如果不匹配,则为 false
| 归档时间: |
|
| 查看次数: |
46280 次 |
| 最近记录: |