File tree 1 file changed +17
-1
lines changed
src/edu/stanford/nlp/trees
1 file changed +17
-1
lines changed Original file line number Diff line number Diff line change @@ -164,7 +164,10 @@ public Tree transformTree(Tree t) {
164
164
if (VERBOSE ) {
165
165
debugLine ("After rearrangeNowThat: " , t );
166
166
}
167
-
167
+ t = mergeYodaVerbs (t );
168
+ if (VERBOSE ) {
169
+ debugLine ("After mergeYodaVerbs: " , t );
170
+ }
168
171
return t ;
169
172
}
170
173
@@ -182,6 +185,19 @@ private static Tree rearrangeNowThat(Tree t) {
182
185
}
183
186
184
187
188
+ private static final TregexPattern mergeYodaVerbsTregex =
189
+ TregexPattern .compile ("VP=home < VBN=vbn $+ (VP=willbe <... {(__=will < will|have|has) ; (VP < (__=be << be|been))})" );
190
+
191
+ private static final TsurgeonPattern mergeYodaVerbsTsurgeon =
192
+ Tsurgeon .parseOperation ("[createSubtree VP vbn] [move will >-1 home] [move be >-1 home] [prune willbe]" );
193
+
194
+ private static Tree mergeYodaVerbs (Tree t ) {
195
+ if (t == null ) {
196
+ return t ;
197
+ }
198
+ return Tsurgeon .processPattern (mergeYodaVerbsTregex , mergeYodaVerbsTsurgeon , t );
199
+ }
200
+
185
201
private static final TregexPattern changeSbarToPPTregex =
186
202
TregexPattern .compile ("NP < (NP $++ (SBAR=sbar < (IN < /^(?i:after|before|until|since|during)$/ $++ S)))" );
187
203
You can’t perform that action at this time.
0 commit comments