public static String replaceAllIfNotInsideTag(String origStr, String findThis, String replaceWith) {
		if (origStr == null) {
			return null;
		}
		if (findThis == null) {
			return origStr;
		}
		if (replaceWith == null) {
			replaceWith = "";
		}
		StringBuilder result = new StringBuilder();
		int index = origStr.indexOf(findThis);
		while (index >= 0) {
			result.append(origStr.substring(0, index));
			if ((index > 0) && origStr.charAt(index - 1) == '>') {
				result.append(findThis);
			} else {
				result.append(replaceWith);
			}
			// TODO :: improve speed by not calling substring but keeping track of start!
			origStr = origStr.substring(index + findThis.length());
			index = origStr.indexOf(findThis);
		}
		result.append(origStr);
		return result.toString();
	}
public static String replaceAllIfNotInsideTag(String origStr, String findThis, String replaceWith) {
		if (origStr == null) {
			return null;
		}
		if (findThis == null) {
			return origStr;
		}
		if (replaceWith == null) {
			replaceWith = "";
		}
		StringBuilder result = new StringBuilder();
		int index = origStr.indexOf(findThis);
		while (index >= 0) {
			result.append(origStr.substring(0, index));
			if ((index > 0) && origStr.charAt(index - 1) == '>') {
				result.append(findThis);
			} else {
				result.append(replaceWith);
			}
		
			origStr = origStr.substring(index + findThis.length());
			index = origStr.indexOf(findThis);
		}
		result.append(origStr);
		return result.toString();
	}
public static string replaceallifnotinsidetag(string origstr, string findthis, string replacewith) { if (origstr == null) { return null; } if (findthis == null) { return origstr; } if (replacewith == null) { replacewith = ""; } stringbuilder result = new stringbuilder(); int index = origstr.indexof(findthis); while (index >= 0) { result.append(origstr.substring(0, index)); if ((index > 0) && origstr.charat(index - 1) == '>') { result.append(findthis); } else { result.append(replacewith); } origstr = origstr.substring(index + findthis.length()); index = origstr.indexof(findthis); } result.append(origstr); return result.tostring(); }