刚看到“姜太公”说开始不喜欢Ruby,读了一遍帖子,觉得。。。青菜萝卜各有所爱吧。
本想跟贴讨论,但觉得那样的争论很无谓,毕竟代码说明问题
[b]Java[/b]
[b]Ruby[/b]
这个可能不怎么说明问题。在程序里面,经常会用到xml数据容器,那么
要表达:
*在 Java 里*
* 在 Ruby 里 *
这里例子都是搬来的,更多在[url]http://www.rubyrailways.com/sometimes-less-is-more[/url]
本想跟贴讨论,但觉得那样的争论很无谓,毕竟代码说明问题
[b]Java[/b]
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Test
{
public static void main(String[] args)
{
try {
BufferedReader in = new BufferedReader(new FileReader("test.txt"));
StringBuffer sb = new StringBuffer();
String str;
while ((str = in.readLine()) != null)
{ sb.append(str + "\n"); }
in.close();
String result = sb.toString();
Pattern sentencePattern = Pattern.compile("(.*?\\.)\\s+?");
Pattern javaPattern = Pattern.compile("Ruby");
Matcher matcher = sentencePattern.matcher(result);
while (matcher.find()) {
String match = matcher.group();
Matcher matcher2 = javaPattern.matcher(match);
if (matcher2.find())
System.err.println(match);
}
} catch (IOException e)
{
e.printStackTrace();
}
}
}
[b]Ruby[/b]
File.read('test.txt').scan(/.*?\. /).each { |s| puts s if s =~ /Ruby/ }
这个可能不怎么说明问题。在程序里面,经常会用到xml数据容器,那么
要表达:
<node name="a">
<node name="b">
<node name="d"/>
<node name="e"/>
</node>
<node name="c">
<node name="f"/>
<node name="g"/>
<node name="h"/>
</node>
</node>
*在 Java 里*
Tree a = new Tree("a");
Tree b = new Tree("b");
Tree c = new Tree("c");
a.addChild(b);
a.addChild(c);
Tree d = new Tree("d");
Tree e = new Tree("e");
b.addChild(d);
b.addchild(e);
Tree f = new Tree("f");
Tree g = new Tree("g");
Tree h = new Tree("h");
c.addChild(f);
c.addChild(g);
c.addChild(h);
* 在 Ruby 里 *
tree = a {
b { d e }
c { f g h }
}
这里例子都是搬来的,更多在[url]http://www.rubyrailways.com/sometimes-less-is-more[/url]