@Override
		protected FieldRange findInLine(int start, BigInteger index) {
			int length = sb.length();
			int i = Math.min(start, length - 1);
			int step = forward ? 1 : -1;
			while (0 <= i && i < length) {
				i = forward ? sb.indexOf(text, i) : sb.lastIndexOf(text, i);
				if (i == -1) {
					return null;
				}
				if (!wholeWord || isWholeWord(i, text)) {
					return new FieldRange(
						new FieldLocation(index, 0, 0, i),
						new FieldLocation(index, 0, 0, i + text.length()));
				}
				i += step;
			}
			return null;
		}
@see TerminalPanel#find(String, Set, FieldLocation, boolean)
Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/terminal/TerminalFinder.java