`
jedy
  • 浏览: 143424 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

取得兩個間的Strings

阅读更多
在google上面看到的..也許有人有用..
<br>
<pre> ff
ccc
ddd
eee
11</pre>
<br>
<pre>jkjl</pre>

1.
print join ' '=>map{ chomp;$_} grep{/<pre>/..m{</pre>}} <DATA>;
會打印出
<pre> ff ccc ddd eee 11</pre> <pre>jkjl</pre>

2.不包含<pre></pre>
print join ' '=>map{chomp;$_} grep{/<pre>/..m{</pre>} and !/<pre>/ and !m{</pre>}} <DATA>;
打印出ccc ddd eee

3.不包含<pre></pre>
print join ' '=>map{chomp;$_} grep{$r=/<pre>/..m{</pre>} and $r>1 and $r!~/e/i}<DATA>;
打印出ccc ddd eee

4.不包含<pre></pre>
my @line=grep{/<pre>/..m{</pre>}} <DATA>;
chomp @line;
shift @line;
pop @line;
print join ' '=>@line;
打印出ccc ddd eee 11</pre>

四種方法都可以取出兩個TAG中間的Strings.....
但是第一種方式會保留TAG..其他不會..
這個用法應該蠻好用的才對...

改进
print join ' '=>map{chomp;s/.*?<pre>//;s!</pre>.*?!!;$_} grep{/<pre>/..m{</pre>}} <DATA>;
打印出 ff ccc ddd eee 11 jkjl

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics