我正在尝试做我的作业,仅限于使用sed过滤输入文件到某种格式的输出.这是输入文件(命名stocks):
Symbol;Name;Volume
================================================
BAC;Bank of America Corporation Com;238,059,612
CSCO;Cisco Systems, Inc.;28,159,455
INTC;Intel Corporation;22,501,784
MSFT;Microsoft Corporation;23,363,118
VZ;Verizon Communications Inc. Com;5,744,385
KO;Coca-Cola Company (The) Common;3,752,569
MMM;3M Company Common Stock;1,660,453
================================================
Run Code Online (Sandbox Code Playgroud)
输出需要是:
BAC, CSCO, INTC, MSFT, VZ, KO, MMM
Run Code Online (Sandbox Code Playgroud)
我确实提出了一个解决方案,但效率不高.这是我的sed脚本(命名try.sed):
/.*;.*;[0-9].*/ { N
N
N
N
N
N
s/\(.*\);.*;.*\n\(.*\);.*;.*\n\(.*\);.*;.*\n\(.*\);.*;.*\n\(.*\);.*;.*\n\(.*\);.*;.*\n\(.*\);.*;.*/\1, \2, \3, \4, \5, \6, \7/gp
}
Run Code Online (Sandbox Code Playgroud)
我在shell上运行的命令是:
$ sed -nf try.sed stocks
Run Code Online (Sandbox Code Playgroud)
我的问题是,有没有更好的方法使用sed来获得相同的结果?我编写的脚本只能使用7行数据.如果数据较长,我需要重新修改我的脚本.我不知道如何才能让它变得更好,所以我在这里寻求帮助!
谢谢你的任何建议.
我接受了一个JSP类,我们了解到在使用之前我们应该总是删除HttpSession的所有属性.所以我的一位同学问道 - "我们在使用它之后永久删除HttpSession怎么样?"
所以,我的问题是"可以删除HttpSession吗?"
从我到目前为止的理解...... HttpSession是由servlet容器创建的,与HttpServletRequest和HttpServletResponse相同.我们通过HttpServletRequest获取它,但是我们不能手动删除它.相反,我们可以设置超时以使会话结束.由于我们无法删除它,因此我们需要确保在使用之前清理会话.我对么?
谢谢!