Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript正则表达式##x##_Javascript_Regex - Fatal编程技术网

Javascript正则表达式##x##

Javascript正则表达式##x##,javascript,regex,Javascript,Regex,我试图得到一个正则表达式,它从字符串中提取格式 例如,“5x7(+50美元)”或“20x24(+70美元)”。有没有更简单的办法拔出##x#或#x# 下面是当前的代码示例……正如您将看到的,子字符串不一定适用于所有测试用例 var example = "5x7 ($50)"; var ex_arr = example.split("x"); console.log(ex_arr[0]); console.log(ex_arr[1].substring(0, 2)); 试试这个: ^(\d+)

我试图得到一个正则表达式,它从字符串中提取格式

例如,“5x7(+50美元)”或“20x24(+70美元)”。有没有更简单的办法拔出##x#或#x#

下面是当前的代码示例……正如您将看到的,子字符串不一定适用于所有测试用例

var example = "5x7 ($50)";
var ex_arr = example.split("x");

console.log(ex_arr[0]);
console.log(ex_arr[1].substring(0, 2));
试试这个:

^(\d+)x(\d+)\s.*$
这里有一把小提琴演示:


捕获1是第一个数字,捕获2是第二个数字。其他一切都被丢弃。

可以
.match(/(\d+)/x(\d+)/)
如果它们之间总是有空格,就在空格上再次拆分,然后得到第一个值。
ex\u arr[1].split(/\s/).shift()
@NiettheDarkAbsol看起来不错,我要在这一个上用@Niet the Dark Absol。@NiettheDarkAbsol确实,如果符合询问者的需要,可以将其缩短为
^(\d+)x(\d+)\s
,甚至
^(\d+)x(\d+)
,但我希望更彻底。:)