* @param pse potential side effect
* @param input modified SE sentence used for regular expression match
* @return true if finds a given pattern, else false
*/
private boolean hasPatternOfDrugDiscontBecausePse(JCas jcas, PotentialSideEffect pse, String input) {
PatternMatch pm = new PatternMatch("(<@DRUG>).*(KW).*(because|after).*(<@PSE>)", input, discontVerb);
if(!pm.mat.find()) return false;
if(pm.isPseBetween(pm.mat.end(2), pm.mat.start(3))) return false;
if(pm.isDrugBetween(pm.mat.end(2), pm.mat.start(3))) return false;
if(pm.isDrugBetween(pm.mat.end(3), pm.mat.start(4))) return false;
int[] drugSpan={-1, -1};
if(pm.isDrugBetween(pm.mat.end(1), pm.mat.start(2), drugSpan)) {
if(pm.isDistantBetween(pm.mat.end(1), drugSpan[0]))
return false;
}
return true;
}