如何用正则表达式去除公式中的字符串
我需要用正则表达式在去除公式中字符串,
比如 abc+"def"+'ghi'+jkl
去除后为 abc+++jkl
我用的是 ["'][\w\s]*["']
但是如果公式中有转义符"或\'或末尾为\\的情况就会出现错误
比如 abc+"ddd"eee\'f"+'ghi\\'+jkl
或者遇到不成对的引号,比如abc+'def"+jkl 我需要保留下来,实际却一样会去除
实在搞不定了,还请高人指点啊!
谢谢谢谢了!!!!
下面是我的测试代码,正确的输出应该为
abc+++'jkl"+mno
<html>
<body>
<script type="text/javascript">
var str="abc+"ddd\\"eee\\\'fff\\\\"+'ggg\\"hhh\\\'iii\\\\'+\'jkl"+mno"
document.write(str + "<br />")
document.write(str.replace(/["'][\w\s]*["']/g,"") + "<br />")
</script>
</body>
</html>
var t="abc+"def"+'ghi'+jkl+'sdsd"+"jooio'";
alert(t);
alert(t.replace(/('(.*?)')/,'').replace(/"(.*?)"/,''));
var str="abc+"ddd\\"eee\\\'fff\\\\"+'ggg\\"hhh\\\'iii\\\\'+\'jkl"+mno";
alert(str.replace(/\\/g,"").replace(/'[^+]*'/g,"").replace(/"[^+]*"/g,""));