javascript - 使用 JS .match() 从字符串中提取数字,然后使用结果来测试相等性

标签 javascript regex match

希望有人能帮忙,因为我对 JS 还很陌生。我需要从 2 个字符串中提取一个数字,然后测试结果是否彼此相等。

例如

var test1 = "7D"
var test2 = "7H"

要提取数字,我使用以下代码,

test1.match(/\d+/) = result in the console is "7", 

我对 test2 变量执行同样的操作,结果也是 7。

但是当我使用

测试相等性时
test1.match(/\d+/) === test2.match(/\d+/) it evaluates to false.  

我尝试在 if 语句中使用此条件,但无法使其工作,例如

if(test1.match(/\d+/) === test2.match(/\d+/)){run some code}

我做错了什么还是有更好的方法来实现这个目标?

谢谢

最佳答案

match 返回一个数组。要比较匹配值,请使用:

var b = (test1.match(/\d+/)[0] === test2.match(/\d+/)[0]);
//=> true

Check this Q&A on how to compare arrays in avascript

关于javascript - 使用 JS .match() 从字符串中提取数字,然后使用结果来测试相等性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28916008/

相关文章:

ruby-on-rails - 一组 6 个连字符分隔的数字的正则表达式是什么?

php - 正则表达式中的双加号

java - 如何解析一个字符串与另一个字符串的比较?

python - 关键词匹配数据分析(列表-列)

javascript - HTML5 内容可编辑触发器开/关

regex - 二进制数可被3整除的正则表达式

javascript - Angular Directive(指令)错误意外的字符串

regex - 如何在 Perl 的匹配正则表达式中包含一个变量,并检查该变量是否不在字符串中?

javascript - DIV on DIV 打开按钮点击

javascript - 为什么从 dom 中删除几乎所有对象不会导致内存减少?