我有一些代码可以从字符串中获取某些文本,但是我希望输出中没有空格。我尝试将.replace(' ', '');
放在代码的某些部分,但是它总是会阻止代码运行
以下是我在下面使用的代码,它将输出this text
,但我希望它输出thistext
<div id="text"></div>
var text ='blah blah text-name="this text"';
const gettext = text;
const gettextoutput = [];
const re = /text-name="([^"]+)"/g;
let match;
while ((match = re.exec(gettext)) !== null) {
gettextoutput.push(match[1]);
}
$("#text").append(gettextoutput);
答案 0 :(得分:1)
由于要将匹配项分配给数组,因此必须替换该数组所有元素的空格,否则JavaScript将抛出错误,因为数组没有replace
方法。
var text ='blah blah text-name="this text"';
const gettext = text;
const gettextoutput = [];
const re = /text-name="([^"]+)"/g;
let match;
while ((match = re.exec(gettext)) !== null) {
gettextoutput.push(match[1]);
}
$("#text").append(gettextoutput.map(e => e.replace(" ", "")));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="text"></div>
答案 1 :(得分:0)
老兄,您可以使用香草javascript:
'text with spaces'.split(' ').join('')
此外,您的初始代码是正确的方式。试试这个:
'text with spaces'.replace(/\s/g, '')