这必须是所有程序员不时有的常见问题.如何从文本文件中读取一行?然后下一个问题是我如何写回来.
当然,大多数人在日常编程中都使用高级框架(可以在答案中使用)但有时候知道如何在较低级别进行编程也很好.
我自己知道该怎么做的C,C++以及Objective-C,但它肯定会得心应手,看看它是如何在所有流行的语言来完成,如果仅仅是为了帮助我们做出什么语言来尽我们的文件IO在一个更好的决定.特别是我认为这将是有趣的,看看它是如何在字符串操作语言完成,如:python,ruby当然perl.
所以我想在这里我们可以创建一个社区资源,我们可以为我们的配置文件加注星标,并参考我们何时需要以某种新语言进行文件I/O. 更不用说曝光我们都会得到我们日常不处理的语言.
这是你需要回答的方式:
澄清:
对语言没有特别限制.
C,C++,C#,Java,Objective-C都是伟大的.
如果你知道如何做到这一点的Prolog,Haskell,Fortran,Lisp,或Basic则请请便.
回答这个问题时,我意识到我不确定Perl是否map可以被视为循环?
一方面,它像循环一样嘎嘎叫/走路(O(n)工作,可以通过等效循环轻松地重写,并且符合常见定义="一系列不断重复的指令").
另一方面,map通常不在Perl的控制结构中列出,其中循环是其中的子集.例如http://en.wikipedia.org/wiki/Perl_control_structures#Loops
所以,我正在寻找的是一个正式的理由来确信一方与另一方.到目前为止,前者(它是一个循环)对我来说听起来更有说服力,但我对我从未在Perl循环列表中提到的"map"这一事实感到困扰.
您是否在正则表达式中使用了Perl 5.10回溯控制动词?他们帮助你完成了哪些问题?
就像背景:我做了一些摆弄,但我不能得到任何真正有用的结果.
作为比较,当我开始得到(?>分组所做的事情时,它开始出现在我的正则表达式中.我喜欢将Perl正则表达式世界调整为一组特定假设的想法.随着RE语言越来越有特色,回溯使得RE的表现与他们所依据的精益和平均FSA大相径庭.
当有人可以告诉我RE的其他实现有回溯控制动词 - 而PCRE 没有,我可以承认它属于熟悉正则表达式的人的一般专业领域.这是一个Perl正则表达式问题,帮助人们使用Ruby,Python,C#,Javascript或任何PCRE客户端实现的人可能无法帮助或将其视为他们通常阅读的标签的浪费空间.
好吧,所以我有一个短语"foo bar",我想找到一切但是"foo bar".
这是我的文字.
ipsum dolor foo bar Lorem ipsum dolor sit amet,consectetur adipisicing elit,
sed do
eiusmod tempor foo bar incididunt ut labore et
dolore foo bar
有一种方法可以在正则表达式中做到这一点吗?我不必去使用字符串等吗?
结果:
注意我不能做一个很好的突出显示,但粗体给你一个想法(虽然前后的空格也将被选中,但它打破了粗体).
ipsum dolor foo bar Lorem ipsum dolor sit amet,consectetur adipisicing elit,
sed do
eiusmod tempor foo bar incididunt ut labore et
dolore foo bar
假设PCRE命名法.
更新2013年7月29日:最好使用您选择的语言中的搜索和替换功能,只是"删除"您不想要的短语,这样您就可以获得所需的信息.