匹配不了葡萄牙语,郁闷~~String str="disposição ";
boolean b=str.matches("\\w+ ");求教怎么写能匹配上

解决方案 »

  1.   

    boolean b = str.matches("\\p{L}+ ");\w 表示 a-z,A-Z,0-9 和 _ 不知道你是否需要匹配数字和下划线?如果要的话就这样:boolean b = str.matches("[0-9_\\p{L}]+ ");
      

  2.   

    \\p{L} 范围比较广,能匹配所有语言的大小写、标题字母,汉字等字符。如果仅需要拉丁字符的话,可以是样:String regex = "[\\p{Lu}\\p{Ll}]+ ";根据 Unicode Regex 规范,Unicode 中的 L 块有以下几类:Lu  Uppercase Letter
    Ll  Lowercase Letter
    Lt  Titlecase Letter
    Lm  Modifier Letter
    Lo  Other Letter