我有一个简单的Python脚本,它接收用户名和密码作为参数,但我的密码包含两个感叹号.当我把我的剧本称为
salafek@dellboy:~/Desktop/$ emailsender.py -u username -p pass!!
Run Code Online (Sandbox Code Playgroud)
我之前输入的命令替换了感叹号:
salafek@dellboy:~/Desktop/$emailsender.py -u username -p "passemailsender.py -u username -p passwget wget http://www.crobot.com.hr/templog"
Run Code Online (Sandbox Code Playgroud)
我可以使用反斜杠(\)来逃避感叹号,但我的密码会更改.
有解决方案,如何在不更改密码的情况下逃避感叹号?
在这些日子里,我用Java编写了一些数据结构.他们中的许多(如果不是全部)提供了一个非常简单的界面(添加,包含,删除),但在幕后有非平凡的算法.
在这种情况下如何使用tdd技术?
我认为问题在于tdd(通常是单元测试)是关于测试接口而不是实现.我对吗?我怎么处理这个?
如果你知道处理这种情况的任何技术,请告诉我.
谢谢您的帮助.
我很快就接受了电话采访,理想情况下,我希望候选人能够实时编写一些代码.任何人都可以建议我们可以去的网站,他可以在我看的时候打字.(我是一个相当严格的企业防火墙,所以很多基本的聊天服务都被阻止了.)
在.Net中使用Regex
我将有一组这样的数据
< Bunch o' Data Here >
Run Code Online (Sandbox Code Playgroud)
其中<只是新记录的指标,是记录>的结尾.
这些记录可能会像这样
< Dataset 1><Dataset 2 broken, no closing tag <dataset 3>
Run Code Online (Sandbox Code Playgroud)
他们也可以进来
< Dataset 1>Dataset 2 broken, no opening tag ><dataset 3>
Run Code Online (Sandbox Code Playgroud)
虽然,我不确定后一种情况是否可能,但是当我不得不跨过这座桥时.
我正在尝试使用Regex将这些分成基于这个开始和结束字符的记录,最终是这样的
Match 1 = < Dataset 1>
Match 2 = <Dataset 2 broken, no closing tag
Match 3 = <Dataset 3>
Run Code Online (Sandbox Code Playgroud)
我试图找出非捕获组如何工作,也许我的理解是错误的.
<.*?(?:<|>)
Run Code Online (Sandbox Code Playgroud)
让我觉得非常接近我认为,除了它包括第三组数据的开头特征与第二组的捕获.我也怀疑它?:没有做它需要的东西,如果它取出它,它返回相同的匹配集(2).
我现在已经尝试了很长一段时间,但无法弄明白.我正在尝试通过*.csv文件将数据导出到Excel.它到目前为止工作得很好,但在Excel中打开文件时遇到了一些编码问题.
(左边的原始字符串,右边的EXCEL结果):
Messwert(µm / m) ==> Messwert(µm / m)
Dümme Mässöng ==> Dümme Mässöng
Run Code Online (Sandbox Code Playgroud)
Notepad ++告诉我该文件被编码为"ANSI as UTF8"(WTF?)
所以这里有不同的方法我试图得到一个有效的结果:明显的实现:
tWriter.Write(";Messwert(µm /m)");
Run Code Online (Sandbox Code Playgroud)
更复杂的一个(试过可能十几个或更多的编码组合:)
tWriter.Write(Encoding.Default.GetString(Encoding.Unicode.GetBytes(";Messwert(µm /m)")));
tWriter.Write(Encoding.ASCII.GetString(Encoding.Unicode.GetBytes(";Messwert(µm /m)")));
Run Code Online (Sandbox Code Playgroud)
等等
创建数据的方法的完整源代码:
MemoryStream tStream = new MemoryStream();
StreamWriter tWriter = new StreamWriter(tStream);
tWriter.Write("\uFEFF");
tWriter.WriteLine(string.Format("{0}", aMeasurement.Name));
tWriter.WriteLine(aMeasurement.Comment);
tWriter.WriteLine();
tWriter.WriteLine("Zeit in Minuten;Messwert(µm / m)");
TimeSpan tSpan;
foreach (IMeasuringPoint tPoint in aMeasurement)
{
tSpan = new TimeSpan(tPoint.Time - aMeasurement[0].Time);
tWriter.WriteLine(string.Format("{0};{1};", (int)tSpan.TotalMinutes, getMPString(tPoint)));
}
tWriter.Flush();
return tStream;
Run Code Online (Sandbox Code Playgroud)
生成的CSV文件:
Dümme Mössäng
Testmessung die erste
Zeit in Minuten;Messwert(µm / m) …Run Code Online (Sandbox Code Playgroud) 我希望能够执行以下伪代码:
理想情况下,我希望签名看起来像:
(runner a b (+ a b))
Run Code Online (Sandbox Code Playgroud)
但我不确定我是否正确接近这个...我已经尝试将功能更改为
(runner 'a 'b (+ 'a 'b))
Run Code Online (Sandbox Code Playgroud)
这个更复杂的例子:
(runner 'a 'b (+ (* 'a 'b) 'a))
Run Code Online (Sandbox Code Playgroud)
但是在进入跑步者之前,这在'a和'b上做了+.
这是我对某些clojure的第一次尝试:
(defn runner [a b c] (
(for [i (range 10)
j (range 10)] (println i j (c i j))
Run Code Online (Sandbox Code Playgroud)
我错过了什么概念的clojure?
我有一个字符串,上面写着"Joesph Van Andrews".我想以这样的方式拆分它,名字是"约瑟夫",姓是"范安德鲁斯"我怎么能在vb.net做到这一点?
我正在使用socket,我正在使用TIdTCPClient和TIdTCPServer.我需要检查TIdTCPClient连接的TIdTCPServer是否在同一网络上.
我怎样才能做到这一点 ?
在.
我想要除了阵列的前五个元素之外的所有元素,所以我愚蠢地做了:
@foo = @foo[ 0 .. 4 ];
Run Code Online (Sandbox Code Playgroud)
并衷心地称赞我自己的聪明才智.但是那次爆发@foo只有三个元素结束了,因为那时我最终得到了两个undefs,而不是一个三元素数组.所以我改成了:
@foo = @foo > 5 ? @foo[ 0 .. 4 ] : @foo;
Run Code Online (Sandbox Code Playgroud)
这有效,但有点难看.有没有更好的成语说"给我一切到阵列的前五个元素?"
我正在尝试设计一个使用第三方API的程序.第三方API描述了具有296个字段的输入,以及具有179个字段的输出.显然我希望类代表输入和输出.设计一个有这么多领域的课程有什么技巧吗?每个领域我应该有一个正常的吸气剂和定位器吗?
注意:因为您要求,API采用一个字符串,其中包含固定宽度格式的所有字段作为输入,并返回一个字符串,其输出也是固定宽度格式.很难从中解释非平面结构.