org.apache.commons.lang3.StringUtils.replacePattern()方法的使用及代码示例

x33g5p2x  于2022-01-17 转载在 其他  
字(11.0k)|赞(0)|评价(0)|浏览(301)

本文整理了Java中org.apache.commons.lang3.StringUtils.replacePattern()方法的一些代码示例,展示了StringUtils.replacePattern()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。StringUtils.replacePattern()方法的具体详情如下:
包路径:org.apache.commons.lang3.StringUtils
类名称:StringUtils
方法名:replacePattern

StringUtils.replacePattern介绍

[英]Replaces each substring of the source String that matches the given regular expression with the given replacement using the Pattern#DOTALL option. DOTALL is also known as single-line mode in Perl.
This call is a null safe equivalent to:

  • source.replaceAll("(?s)" + regex, replacement)
  • Pattern.compile(regex, Pattern.DOTALL).matcher(source).replaceAll(replacement)

A null reference passed to this method is a no-op.

StringUtils.replacePattern(null, *, *)       = null 
StringUtils.replacePattern("any", (String) null, *)   = "any" 
StringUtils.replacePattern("any", *, null)   = "any" 
StringUtils.replacePattern("", "", "zzz")    = "zzz" 
StringUtils.replacePattern("", ".*", "zzz")  = "zzz" 
StringUtils.replacePattern("", ".+", "zzz")  = "" 
StringUtils.replacePattern("<__>\n<__>", "<.*>", "z")       = "z" 
StringUtils.replacePattern("ABCabc123", "[a-z]", "_")       = "ABC___123" 
StringUtils.replacePattern("ABCabc123", "[^A-Z0-9]+", "_")  = "ABC_123" 
StringUtils.replacePattern("ABCabc123", "[^A-Z0-9]+", "")   = "ABC123" 
StringUtils.replacePattern("Lorem ipsum  dolor   sit", "( +)([a-z]+)", "_$2")  = "Lorem_ipsum_dolor_sit"

[中]使用Pattern#DOTALL选项将与给定正则表达式匹配的源字符串的每个子字符串替换为给定替换。DOTALL在Perl中也称为单线模式。
此调用是一个空安全等价于:
*来源。replaceAll(“(?s)”+正则表达式,替换)
*模式。编译(regex,Pattern.DOTALL)。匹配器(来源)。全部替换(替换)
传递给此方法的null引用是no-op。

StringUtils.replacePattern(null, *, *)       = null 
StringUtils.replacePattern("any", (String) null, *)   = "any" 
StringUtils.replacePattern("any", *, null)   = "any" 
StringUtils.replacePattern("", "", "zzz")    = "zzz" 
StringUtils.replacePattern("", ".*", "zzz")  = "zzz" 
StringUtils.replacePattern("", ".+", "zzz")  = "" 
StringUtils.replacePattern("<__>\n<__>", "<.*>", "z")       = "z" 
StringUtils.replacePattern("ABCabc123", "[a-z]", "_")       = "ABC___123" 
StringUtils.replacePattern("ABCabc123", "[^A-Z0-9]+", "_")  = "ABC_123" 
StringUtils.replacePattern("ABCabc123", "[^A-Z0-9]+", "")   = "ABC123" 
StringUtils.replacePattern("Lorem ipsum  dolor   sit", "( +)([a-z]+)", "_$2")  = "Lorem_ipsum_dolor_sit"

代码示例

代码示例来源:origin: org.apache.commons/commons-lang3

@Test
public void testReplacePattern_StringStringString() {
  assertNull(StringUtils.replacePattern(null, "", ""));
  assertEquals("any", StringUtils.replacePattern("any", null, ""));
  assertEquals("any", StringUtils.replacePattern("any", "", null));
  assertEquals("zzz", StringUtils.replacePattern("", "", "zzz"));
  assertEquals("zzz", StringUtils.replacePattern("", ".*", "zzz"));
  assertEquals("", StringUtils.replacePattern("", ".+", "zzz"));
  assertEquals("z", StringUtils.replacePattern("<__>\n<__>", "<.*>", "z"));
  assertEquals("z", StringUtils.replacePattern("<__>\\n<__>", "<.*>", "z"));
  assertEquals("X", StringUtils.replacePattern("<A>\nxy\n</A>", "<A>.*</A>", "X"));
  assertEquals("ABC___123", StringUtils.replacePattern("ABCabc123", "[a-z]", "_"));
  assertEquals("ABC_123", StringUtils.replacePattern("ABCabc123", "[^A-Z0-9]+", "_"));
  assertEquals("ABC123", StringUtils.replacePattern("ABCabc123", "[^A-Z0-9]+", ""));
  assertEquals("Lorem_ipsum_dolor_sit",
         StringUtils.replacePattern("Lorem ipsum  dolor   sit", "( +)([a-z]+)", "_$2"));
}

代码示例来源:origin: org.talend.daikon/daikon

String convertToInnerClassString(String type) {
    return StringUtils.replacePattern(type, "([a-z0-9]*\\\\.[A-Z][^.]*)?((\\\\.)([A-Z][a-z0-9]*))", "$1\\$$4");
  }
}

代码示例来源:origin: virjar/vscrawler

@Override
protected String handle(String input, String second, String third) {
  return StringUtils.replacePattern(input, second, third);
}

代码示例来源:origin: org.talend.daikon/daikon

String convertToInnerClassString(String type) {
  return StringUtils.replacePattern(type, "([a-z0-9]*\\\\.[A-Z][^.]*)?((\\\\.)([A-Z][a-z0-9]*))", "$1\\$$4");
}

代码示例来源:origin: jhpoelen/eol-globi-data

private static String trimAndChopMonth(String month) {
  // from https://github.com/hurlbertlab/dietdatabase/issues/104#issuecomment-421398922
  //
  // [...] I have left for the moment the decimal month entries. These were used for studies that examined
  // diets for different times within the same month. E.g., diet items for June 1-10 versus June 11-20
  // versus June 21-30. Within each of those periods, % diet info for a given bird species sums to 100%, b
  // ut with our current database structure, the only way to identify unique diet analyses
  // (set of records that sum to 100%) is to find the unique combination of Source,
  // Observation_Year_Begin, Observation_Month_Begin, Observation_Season, Bird_Sample_Size,
  // Habitat_type, Location_Region, Item_Sample_Size, Taxon, and Diet_Type.
  //  For some of these problem studies, all of the values are identical, and specifying an
  // Observation_Month of 6.3 versus 6.7 is the only way that these sets of records are distinguished
  // by some of our summary functions. [...]
  return StringUtils.replacePattern(StringUtils.trim(month), "\\.[0-9]+$", "");
}

代码示例来源:origin: windup/windup

private FileMapping(Pattern pattern)
{
  this.pattern = pattern;
  String normalizedPattern = StringUtils.replacePattern(pattern.pattern(), "\\s", "_");
  normalizedPattern = StringUtils.substring(normalizedPattern, 0, 10);
  this.id = this.getClass().getSimpleName()+ "_" + normalizedPattern
      + "_" + RandomStringUtils.randomAlphanumeric(2);
}

代码示例来源:origin: metatron-app/metatron-discovery

public static String makeTableName(String name) {
 if(StringUtils.isEmpty(name)) {
  return randomUUID(false).replace("-", "_");
 }
 String replaced = StringUtils.replacePattern(name, "[\\W]*", "");
 if(replaced.length() < 3) {
  return randomUUID(false).replace("-", "_");
 }
 return replaced;
}

代码示例来源:origin: metatron-app/metatron-discovery

public static String convertDataSourceName(String name) {
 Preconditions.checkNotNull(name);
 // 1. 소문자화
 String newName = StringUtils.lowerCase(name);
 // 2. 공백 '_' 치환
 newName = StringUtils.replacePattern(newName, "\\s", "_");
 // 3. 앞에 숫자 제거
 newName = StringUtils.replaceFirst(newName, "^[0-9]+", "");
 // 4. 영문 및 _ 만 제외하고 모두 제거
 newName = StringUtils.replacePattern(newName, "[^a-z_0-9]", "");
 // 5. 5글자 이하이면 뒤에 _ 포함 Random 문자 5자 추가
 if(newName.length() < 5) {
  newName += "_" + randomString(5);
 }
 return newName;
}

代码示例来源:origin: jhpoelen/eol-globi-data

private void extractTerms(String taxonName, Specimen specimen) throws NodeFactoryException {
  String s = StringUtils.replacePattern(taxonName, "[^A-Za-z]", " ");
  String[] nameParts = StringUtils.split(s);
  for (String part : nameParts) {
    extractLifeStage(specimen, part);
    extractBodyPart(specimen, part);
  }
}

代码示例来源:origin: AKSW/RDFUnit

/**
 * Will try to get a responsive content location by adding suffixes based on the given SerializationFormats
 * @param currentUrl - the base url onto which to concatenate the suffixes
 * @param formats - the list of SerializationFormats to try out
 * @param redirects - list of established redirects which led to this point
 * @return - the optional content location
 */
private Optional<String> getContentVersions(String currentUrl, Collection<SerializationFormat> formats, ArrayList<String> redirects){
  Optional<SerializationFormat> test = formats.stream().filter(x -> currentUrl.trim().endsWith(x.getExtension())).findFirst();
  if(currentUrl != null && ! test.isPresent()){
    for(SerializationFormat format : formats) {
      String tryOwl = StringUtils.replacePattern(currentUrl, "#$", "");
      tryOwl = StringUtils.replacePattern(tryOwl, "/$", "");
      tryOwl = StringUtils.replacePattern(tryOwl, "\\.html$", "");
      tryOwl = StringUtils.replacePattern(tryOwl, "\\.htm$", "");
      Optional<String> res = getContentLocation(tryOwl + "." + format.getExtension(), format, redirects);
      if (res.isPresent())
        return res;
      res = getContentLocation(tryOwl + "/ontology." + format.getExtension(), format, redirects);
      if (res.isPresent())
        return res;
      res = getContentLocation(tryOwl + "/schema." + format.getExtension(), format, redirects);
      if (res.isPresent())
        return res;
    }
  }
  return Optional.empty();
}

代码示例来源:origin: anylogic/alogic

reason = "";
}else{
  reason = StringUtils.replacePattern(reason, "\r\n", " "); //windows
  reason = StringUtils.replacePattern(reason, "\n", " ");//linux
  reason = StringUtils.replacePattern(reason, "\r", " ");//unix
  reason = StringUtils.replacePattern(reason, "\\|", "&brvbar;");

代码示例来源:origin: com.perforce/p4java

private static void replaceWithUnderscoreIfClientNameContainsWhitespacesOrTabs(IClient newClient) {
  final String TABS = "\t";
  String name = newClient.getName();
  if (containsAny(name, SPACE, TABS)) {
    String newClientName = replacePattern(name, "\\s", "_");
    newClient.setName(newClientName);
  }
}

代码示例来源:origin: net.nemerosa.ontrack/ontrack-ui-graphql

public static String lowerCamelCase(String text) {
  if (text == null) {
    return null;
  } else if (StringUtils.isBlank(text)) {
    return "";
  } else {
    return StringUtils.uncapitalize(
        StringUtils.remove(
            WordUtils.capitalizeFully(
                StringUtils.replacePattern(
                    text,
                    "[^A-Za-z0-9]",
                    " "
                ),
                ' '),
            " ")
    );
  }
}

代码示例来源:origin: groboclown/p4ic4idea

static void replaceWithUnderscoreIfClientNameContainsWhitespacesOrTabs(IClient newClient) {
  final String TABS = "\t";
  String name = newClient.getName();
  if (containsAny(name, SPACE, TABS)) {
    String newClientName = replacePattern(name, "\\s", "_");
    newClient.setName(newClientName);
  }
}

代码示例来源:origin: de.vandermeer/skb-interfaces

String lfRep = StringUtils.replacePattern(s.toString(), "\\r\\n|\\r|\\n", "<br>");
lfRep = StringUtils.replace(lfRep, "<br>", "<br/>");
lfRep = StringUtils.replace(lfRep, "<br/>", "<br />");

代码示例来源:origin: de.vandermeer/skb-interfaces

String text = StringUtils.replacePattern(input, "\\r\\n|\\r|\\n", LINEBREAK);
text = StringUtils.replace(text, "<br>", LINEBREAK);
text = StringUtils.replace(text, "<br/>", LINEBREAK);

相关文章

StringUtils类方法