簡體   English   中英

我的Groovy正則表達式出了什么問題?

[英]What's wrong with my Groovy regex?

這是我的代碼:

String myRegex = "*cow"
String name = "SHIRACOWPEPPER"
name = name.toLowerCase()

if(!name || name.matches(myRegex)) {
    return true
}

當我運行它時,我得到一個PatternSyntaxException: Dangling meta character '*' near index 0 *cow ^ error PatternSyntaxException: Dangling meta character '*' near index 0 *cow ^ 想法?

*是一個元字符,意思是你之前匹配的東西“零次或多次”,但在這種情況下,沒有什么可以匹配的。 這應該可行:

String myRegex = ".*cow"
String name = "SHIRACOWPEPPER"
name = name.toLowerCase()

if(!name || name.matches(myRegex)) {
    return true
}

有關更多信息,請參閱文檔

你可能想說String myRegex = ".*cow" ,這意味着牛之前的任何數字字符都是后綴

暫無
暫無

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

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