我正在解析一个如下所示的CSV文件:
$('#math').click(function(e){
e.preventDefault();
$("#result").html("$$ \\text{MathJax inside .click event works!} $$");
MathJax.Hub.Queue(['Typeset',MathJax.Hub,'result']); // <-- YOU NEED THIS
});
//outside .click event
$("#Outside").html("$$ \\frac{d}{dx}\\left(2x^2\\right)=\\:4x $$");
应该引用分隔的唯一列是第二列(例如<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src='https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/MathJax.js?config=TeX-MML-AM_CHTML'></script>
<button id="math" type="submit" >
<b>ShowMathjax On click</b>
</button>
<span id="result"></span>
<div style="padding:10%;">
MathJax Outside .click event works:
<span id="Outside"></span>
</div>
,999,"FOO",0.00249,0.00249,0.00249,0.0000,1,1
888,"BAR",0.00249,0.00249,0.00249,0.0000,1,1
777,"FOOBAR",0.00999,0.00999,0.00999,0.0000,1,1
666,"ABC",0.00999,0.00999,0.00999,0.0000,1,1
555,"DEF","-0.00100","-0.00100","-0.00100",0.0000,1,1
444,"EFG","-0.00100","-0.00100","-0.00100",0.0000,1,1
等)。其他列始终被解释为数字。
正如您在上面的示例中所看到的,第555行和第444行的引号为"FOO"
。
因此,我希望从数值周围删除引号。
我在这里对Stackoverflow做了一些研究并确定了以下内容: https://stackoverflow.com/a/18624948/4474629
我试图改编它:
"BAR"
但输出仍然打印?
"-0.00100"
预期结果是:
column -t -s, | sed s/"(-?\d[\d.]*)"/\1/g | more
答案 0 :(得分:2)
如果查看the sed manual,您会发现(
,?
,\d
和)
都不受支持。您使用perl链接的问题,这些构造在哪里工作。
您可以调整脚本:
sed 's/"\(-\?[0-9][0-9.]*\)"/\1/g'
(使用单引号来防止shell对特殊字符的解释)。
甚至\?
是GNU扩展名;如果你的sed不支持,你可能不得不使用-\{0,1\}
。
答案 1 :(得分:0)
这可能适合你(GNU sed):
sed 's/"//3g' file
仅引用第二列,因此应该只有2个双引号,其他任何一个都应该删除。