Example usage for org.apache.commons.lang3 StringUtils indexOfIgnoreCase

List of usage examples for org.apache.commons.lang3 StringUtils indexOfIgnoreCase

Introduction

In this page you can find the example usage for org.apache.commons.lang3 StringUtils indexOfIgnoreCase.

Prototype

public static int indexOfIgnoreCase(final CharSequence str, final CharSequence searchStr, int startPos) 

Source Link

Document

Case in-sensitive find of the first index within a CharSequence from the specified position.

A null CharSequence will return -1 .

Usage

From source file:kenh.expl.functions.IndexOf.java

public int process(String seq, String searchSeq, int startPos, boolean ignoreCase) {
    if (ignoreCase)
        return StringUtils.indexOfIgnoreCase(seq, searchSeq, startPos);
    else//  w  w  w . jav  a 2 s  .  com
        return StringUtils.indexOf(seq, searchSeq, startPos);
}

From source file:org.eclipse.recommenders.codesearch.rcp.index.extdoc.LabelProvider.java

private void setCellText(final ViewerCell cell) {
    final StringBuilder sb = new StringBuilder();
    for (final ASTNode n : statements) {
        // term matching in here:... waiting for contribution of
        // Kristjian...
        sb.append(n.toString()).append(IOUtils.LINE_SEPARATOR);
    }//from   w  w  w .ja v  a  2s.  c o m
    final String[] split = StringUtils.split(sb.toString(), IOUtils.LINE_SEPARATOR);
    final String summary = StringUtils.join(ArrayUtils.subarray(split, 0, 3), IOUtils.LINE_SEPARATOR);
    cell.setText(summary);
    final List<StyleRange> ranges = Lists.newArrayList();
    final Color color = JavaUI.getColorManager().getColor(IJavaColorConstants.JAVA_KEYWORD);

    for (final String term : searchterms) {

        int index = 0;
        while (true) {
            index = StringUtils.indexOfIgnoreCase(summary, term, index);
            if (index == -1) {
                break;
            }
            ranges.add(new StyleRange(index, term.length(), color, null));
            index += term.length();
        }
    }
    cell.setFont(JFaceResources.getTextFont());
    cell.setStyleRanges(ranges.toArray(new StyleRange[0]));
}

From source file:org.yamj.core.service.metadata.nfo.InfoReader.java

/**
 * Scan a text file for information/*from w  w w  .j  a  v  a2 s.  c  om*/
 *
 * @param nfoContent
 * @param dto
 * @return
 */
private boolean readTextNfo(String nfoContent, InfoDTO dto) {
    boolean foundInfo = onlineScannerService.scanNFO(nfoContent, dto);

    LOG.trace("Scanning NFO for Poster URL");
    int urlStartIndex = 0;
    while (urlStartIndex >= 0 && urlStartIndex < nfoContent.length()) {
        int currentUrlStartIndex = StringUtils.indexOfIgnoreCase(nfoContent, "http://", urlStartIndex);
        if (currentUrlStartIndex >= 0) {
            int currentUrlEndIndex = StringUtils.indexOfIgnoreCase(nfoContent, "jpg", currentUrlStartIndex);
            if (currentUrlEndIndex >= 0) {
                int nextUrlStartIndex = StringUtils.indexOfIgnoreCase(nfoContent, "http://",
                        currentUrlStartIndex);
                // look for shortest http://
                while ((nextUrlStartIndex != -1) && (nextUrlStartIndex < currentUrlEndIndex + 3)) {
                    currentUrlStartIndex = nextUrlStartIndex;
                    nextUrlStartIndex = StringUtils.indexOfIgnoreCase(nfoContent, "http://",
                            currentUrlStartIndex + 1);
                }

                // Check to see if the URL has <fanart> at the beginning and ignore it if it does (Issue 706)
                if ((currentUrlStartIndex < 8)
                        || (nfoContent.substring(currentUrlStartIndex - 8, currentUrlStartIndex)
                                .compareToIgnoreCase("<fanart>") != 0)) {
                    String foundUrl = nfoContent.substring(currentUrlStartIndex, currentUrlEndIndex + 3);

                    // Check for some invalid characters to see if the URL is valid
                    if (foundUrl.contains(" ") || foundUrl.contains("*")) {
                        urlStartIndex = currentUrlStartIndex + 3;
                    } else {
                        LOG.debug("Poster URL found in NFO: {} ", foundUrl);
                        dto.addPosterURL(foundUrl);
                        urlStartIndex = -1;
                        foundInfo = Boolean.TRUE;
                    }
                } else {
                    LOG.debug("Poster URL ignored in NFO because it's a fanart URL");
                    // Search for the URL again
                    urlStartIndex = currentUrlStartIndex + 3;
                }
            } else {
                urlStartIndex = currentUrlStartIndex + 3;
            }
        } else {
            urlStartIndex = -1;
        }
    }

    return foundInfo;
}