String[] segs = new String[3];
	public void parse(IContainer folder, String message)	{		this.folder = folder;		while (folder instanceof IFolder)		{			folder = folder.getParent();		}		if (folder instanceof IProject)		{			project = (IProject)folder;		}		else		{			// maybe never execute			return;		}		this.message = message;		msgIdx = 0;		Pattern errPattern = Pattern.compile(errRegex);		Pattern warnPattern = Pattern.compile(warnRegex);		Pattern infoPattern = Pattern.compile(infoRegex);				String[] segs = new String[3]; 		String lineStr;		for (lineStr = getLine(); lineStr != null; lineStr = getLine())		{			if (!lineStr.equals(""))			{				Matcher m;				m = errPattern.matcher(lineStr);				if (m.matches())				{					getSegment(m, segs);					setErrorMarker(segs[0], segs[1], segs[2]);				}				m = warnPattern.matcher(lineStr);				if (m.matches())				{					getSegment(m, segs);					setWarningMarker(segs[0], segs[1], segs[2]);				}				m = infoPattern.matcher(lineStr);				if (m.matches())				{					getSegment(m, segs);					setInfoMarker(segs[0], segs[1], segs[2]);				}			}		}	}