簡體   English   中英

Java正則表達式

[英]Java Regular Expression

我需要定義一個(Java)正則表達式,以匹配不包含任何這些字符串的任何字符串

  • 整個詞為“ foo”或“ foos”
  • “ bar”或“ bars”整體
  • 整個單詞“ baz”或“ bazs”

是否可以將其表示為單個正則表達式? 我知道使用3個單獨的正則表達式會更具可讀性,但如果可能的話,我希望將其合而為一。

謝謝唐

請嘗試以下操作:

final private static Pattern p = Pattern.compile(".*\\b(?:foos?|bars?|bazs?)\\b.*");
public boolean isGoodString(String stringToTest) {
  return !p.matcher(stringToTest).matches();
}

干得好:

^((?!\bfoos?|bars?|bazs?\b).)*$

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM