Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.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_Arrays_Regex - Fatal编程技术网

Javascript 仅查找第一个匹配项并返回数组中的剩余字符

Javascript 仅查找第一个匹配项并返回数组中的剩余字符,javascript,arrays,regex,Javascript,Arrays,Regex,我使用正则表达式在字符串中查找匹配项 输入为“an” 变量为“banana” 需要输出为数组['b','a','n','a'] 我试过以下方法: 代码 var regex = '[^' + input + ']'; regex = new RegExp(regex, 'gi') var reduceArr = variable.match(regex); 它应该生成包含剩余字符的数组,不包括第一个输入匹配项。。 输入可以是单个字符或两个字符 尝

我使用正则表达式在字符串中查找匹配项

输入为“an”

变量为“banana”

需要输出为数组['b','a','n','a']

我试过以下方法:

代码

var regex = '[^' + input + ']';
            regex = new RegExp(regex, 'gi')
            var reduceArr = variable.match(regex);
它应该生成包含剩余字符的数组,不包括第一个输入匹配项。。 输入可以是单个字符或两个字符

尝试的示例:

输入:“ta”

对于变量:“谈话”


它工作正常

在输入字符串()前后查找匹配项:

var输入='an';
var变量='banana';
var regex=new RegExp('^(.*)'+input+'(.*)$','i');
var reduceArr=(variable.match(regex)| |[])。slice(1)。join(“”)。split(“”);//如果找到匹配的位置,则合并捕获组并拆分为个字符

控制台日志(reduceArr)这将查找输入字符串()前后的匹配项:

var输入='an';
var变量='banana';
var regex=new RegExp('^(.*)'+input+'(.*)$','i');
var reduceArr=(variable.match(regex)| |[])。slice(1)。join(“”)。split(“”);//如果找到匹配的位置,则合并捕获组并拆分为个字符

控制台日志(reduceArr)您可以获取搜索字符串并用空字符串替换第一个查找。然后拆分字符串以仅获取单个字符

函数getParts(输入,字符串){
var regex=new RegExp(输入'i')
返回字符串.replace(正则表达式“”).split(“”);
}

log(getParts('an','banana')您可以获取搜索字符串并用空字符串替换第一个查找。然后拆分字符串以仅获取单个字符

函数getParts(输入,字符串){
var regex=new RegExp(输入'i')
返回字符串.replace(正则表达式“”).split(“”);
}
log(getParts('an','banana')

$(文档).ready(函数(){
var输入='an';
var变量='banana';
var regex=variable.replace(输入“”);;
var arr=新数组(regex.split(“”));
控制台日志(arr);
});

$(文档).ready(函数(){
var输入='an';
var变量='banana';
var regex=variable.replace(输入“”);;
var arr=新数组(regex.split(“”));
控制台日志(arr);
});

不需要regexp。你可以简单地做如下事情

var bazooka=(t,s)=>s.replace(t,“”).split(“”);
原木(火箭筒(“安”,“香蕉”));

控制台日志(火箭筒(“哈勃”、“贝林戈”)不需要regexp。你可以简单地做如下事情

var bazooka=(t,s)=>s.replace(t,“”).split(“”);
原木(火箭筒(“安”,“香蕉”));

控制台日志(火箭筒(“哈勃”、“贝林戈”)我不太明白。您的标题要求“不重复的剩余字符”,但
['b'、'a'、'n'、'a']
确实有重复的
a
s。请详细解释。对不起,输入重复。。。正则表达式应该只匹配第一次。。。剩下的字符应该作为数组中的字符返回,我不太明白。您的标题要求“不重复的剩余字符”,但
['b'、'a'、'n'、'a']
确实有重复的
a
s。请详细解释。对不起,输入重复。。。正则表达式应该只匹配第一次。。。其余字符应作为ArrayTanks Nina中的字符返回。。简单而伟大的答案。每次都回答我的问题:)谢谢尼娜。。简单而伟大的答案。每次都回答我的问题:)好兄弟。。。如果你把线拴起来,那就太好了,兄弟。。。如果你把绳子拴起来,那就太好了