javascript中的PHP preg_替换
我在PHP中使用了preg_replace,但我不得不将它移到JavaScript代码中,但它在那里不起作用。我在这里搜索了主题,但没有找到适合我的工作解决方案。。。 我的PHP看起来像:javascript中的PHP preg_替换,javascript,php,preg-replace,Javascript,Php,Preg Replace,我在PHP中使用了preg_replace,但我不得不将它移到JavaScript代码中,但它在那里不起作用。我在这里搜索了主题,但没有找到适合我的工作解决方案。。。 我的PHP看起来像: preg_replace('/^\d+_/', '', $docTypes); 现在,我的JS看起来很重要,var documentTypes是object: var documentTypesObj = {}; var counter = 0; {foreach $documentTyp
preg_replace('/^\d+_/', '', $docTypes);
现在,我的JS看起来很重要,var documentTypes
是object
:
var documentTypesObj = {};
var counter = 0;
{foreach $documentTypes as $key =>$value}
documentTypesObj[counter + '_' + {$key}] = {$value};
counter++;
{/foreach}
var documentTypes = documentTypesObj;
documentTypes = documentTypes.map(d => { return d.replace(/^\d+_/g, "")});
console.log(documentTypes);
在var documentTypes
中是带有前缀的值,我必须删除这些值。例如,值为:
0_xxxx
1_xxxx
2_xxxx
谢谢你的建议
<script type="text/javascript">
documentTypes = '0_xxxx';
documentTypes = documentTypes.replace(/^\d+_/, '');
document.write(documentTypes);
</script>
文档类型='0_xxxx';
documentTypes=documentTypes.replace(/^\d+\uu/,“”);
文件。编写(文件类型);
如果是数组:
var docs = ["0_xxx", "1_yyy", "2_zzzz"];
docs = docs.map(d => { return d.replace(/^\d+_/g, "")});
输入字符串不确定,问题可能是因为字符串中有换行符或进位返回符。如果是这样,您正在寻找的解决方案可能是:
var documentTypes = '0_xxxx\n\
1_xxxx\n\
2_xxxx';
documentTypes = documentTypes.replace(/(^\d+_|[\r\n]+\d+_)/gm,'');
您在末尾加倍了一个
/
,它必须是/^\d+\ug
^^^^和documentTypes=documentTypes.replace(/^\d+\ug/,“”)
您必须将其赋回变量以更新其值,并且不需要g
标志。@Tushar code edited无需解释?只有代码的答案对未来的读者没有帮助。请回答并添加解释。实际上,它是对象,当我使用您的解决方案时,console.log说docs.map不是一个函数。(但它告诉我,当我尝试使用forEach()
和其他函数时。。。