Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/478.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 如果参数被空格分割,如何从字符串中解析参数_Javascript_Node.js_Regex_Parsing - Fatal编程技术网

Javascript 如果参数被空格分割,如何从字符串中解析参数

Javascript 如果参数被空格分割,如何从字符串中解析参数,javascript,node.js,regex,parsing,Javascript,Node.js,Regex,Parsing,我正在做一个项目,现在我被卡住了 我正试图从这种格式的字符串中进行解析 字符串由用户给定,例如,这是用户输入: Foo Bar 150敏捷的棕色狐狸跳过了懒狗 我怎样才能得到这样的东西 ['foobar',15,0,0,“敏捷的棕色狐狸跳过了懒狗”] 注意:字符串可以包括整数 谢谢。我个人会使用正则表达式。字符串的格式是否始终相同 如果是的话。。。。我会匹配整数值: “foobar150敏捷的棕色狐狸跳过了懒狗”。匹配(/(\d++\s)+/g) 然后,我将使用结果匹配进行拆分 let num

我正在做一个项目,现在我被卡住了

我正试图从这种格式的字符串中进行解析

字符串由用户给定,例如,这是用户输入:

Foo Bar 150敏捷的棕色狐狸跳过了懒狗

我怎样才能得到这样的东西

['foobar',15,0,0,“敏捷的棕色狐狸跳过了懒狗”]

注意:字符串可以包括整数


谢谢。

我个人会使用正则表达式。字符串的格式是否始终相同

如果是的话。。。。我会匹配整数值:

“foobar150敏捷的棕色狐狸跳过了懒狗”。匹配(/(\d++\s)+/g)

然后,我将使用结果匹配进行拆分

let numbers = "Foo Bar 15 0 0 The quick brown fox jumps over the lazy dog".match(/(\d+\s)+/g)
["15 0 0 "]
let words = "Foo Bar 15 0 0 The quick brown fox jumps over the lazy dog".split(numbers[0].trim())
(2) ["Foo Bar ", " The quick brown fox jumps over the lazy dog"]

Regex似乎是一个合理的解决方案,但只需调用一次即可

在传递给
.split
的正则表达式中包含捕获组(
(…)
)时,捕获的文本将包含在结果数组中。这意味着您可以围绕数字分割文本,但也可以使用类似
/\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+/
的模式捕获数字

例如:

var input=“Foo Bar 15 0 0敏捷的棕色狐狸跳过了懒狗”
var regex=/\s+(\d+)\s+(\d+)\s+(\d+)\s+/;
var结果=输入.分割(正则表达式);

控制台日志(结果)@nstanard不知道你所说的“看起来像家庭作业”是什么意思。这个格式是为我的一个项目中的用户输入的,我在发布之前对它进行了调整,但我甚至没有注意到我在字符串中间做了3个整数,p.s.w.g给出了一个惊人的答案,它肯定比JS的string.split()更干净。谢谢。您得到的答案是javascript
.split()
。。。。我想你是糊涂了。祝你的项目好运(很可能是家庭作业)