Blame view

doc/classes/TreeTagger/TaggerChunker.src/M000015.html 3.55 KB
81ed24dd0   Romain Deveaud   modules revamp.
1
2
3
4
5
6
7
8
9
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <title>parse (TreeTagger::TaggerChunker)</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
  </head>
  <body class="standalone-code">
b3995017e   Romain Deveaud   changing the name...
10
    <pre><span class="ruby-comment cmt"># File lib/mirimiri/ttagger.rb, line 34</span>
81ed24dd0   Romain Deveaud   modules revamp.
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
      <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">parse</span> <span class="ruby-identifier">chunk_lines</span>
        <span class="ruby-identifier">open</span> = <span class="ruby-keyword kw">false</span>
        <span class="ruby-identifier">tag</span>  = <span class="ruby-keyword kw">nil</span>
  
        <span class="ruby-identifier">chunks</span> = []
        <span class="ruby-identifier">words</span>  = []
  
        <span class="ruby-identifier">chunk_lines</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">l</span><span class="ruby-operator">|</span>
          <span class="ruby-identifier">l</span>.<span class="ruby-identifier">chomp!</span>
          <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">l</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp re">/^&lt;\w+&gt;$/</span>
            <span class="ruby-identifier">open</span> = <span class="ruby-keyword kw">true</span>
            <span class="ruby-identifier">tag</span>  = <span class="ruby-identifier">l</span>
          <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">l</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp re">/^&lt;\/\w+&gt;$/</span>
            <span class="ruby-keyword kw">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">words</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">open</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">l</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">sub</span>(<span class="ruby-regexp re">/&lt;/</span>, <span class="ruby-value str">'&lt;/'</span>)
              <span class="ruby-identifier">open</span> = <span class="ruby-keyword kw">false</span>
              <span class="ruby-identifier">chunks</span>.<span class="ruby-identifier">push</span> <span class="ruby-constant">Chunk</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">words</span>.<span class="ruby-identifier">join</span>(<span class="ruby-value str">&quot; &quot;</span>), <span class="ruby-identifier">tag</span>) 
              <span class="ruby-identifier">words</span>.<span class="ruby-identifier">clear</span>
            <span class="ruby-keyword kw">else</span>
              <span class="ruby-keyword kw">next</span>
            <span class="ruby-keyword kw">end</span>
          <span class="ruby-keyword kw">else</span>
            <span class="ruby-identifier">words</span>.<span class="ruby-identifier">push</span>(<span class="ruby-identifier">l</span>.<span class="ruby-identifier">split</span>.<span class="ruby-identifier">first</span>)
          <span class="ruby-keyword kw">end</span>
        <span class="ruby-keyword kw">end</span>
  
        <span class="ruby-identifier">chunks</span>
      <span class="ruby-keyword kw">end</span></pre>
  </body>
  </html>