2017-08-28 103 views
-1

我需要匹配描述文件名的字符串。如何匹配以“。”开头的字符串。或“_”

你可以建议我如何匹配只有不以“。”开头的字符串。或“_”

谢谢。

我已经试过:

val x = "_pi" 
val re = "^[\\._].*$".r 
x match { 
    case re(z) => println("false") 
    case _ => println("true") 
} 

打印“真”如果值不匹配,但它不工作 但只打印假

+3

你有什么已经尝试过? https://stackoverflow.com/help/how-to-ask – cchantep

+0

请参考stackoverflow.com/help/how-to-ask(正如cchantep刚才所说)并添加一些您已经尝试过的代码,描述它的功能和方式它不符合你的标准,所以我们可以帮助你解决它。 我们不是一个代码编写服务。 –

回答

0

您可以使用正则表达式 - [\._] 将匹配._。尝试^[\._].*$

0

如果你不想使用正则表达式,你可以调用内置startsWith功能上的字符串:

scala> def isBad(s: String): Boolean = s.startsWith("_") || s.startsWith(".") 
isBad: (s: String)Boolean 

scala> isBad(".foo") 
res4: Boolean = true 

scala> isBad("_bar") 
res5: Boolean = true 

scala> isBad("foobar") 
res6: Boolean = true 
相关问题