需要帮助java中的正则表达式

时间:2012-02-15 22:13:28

标签: java regex

有人可以帮助我改变下面的正则表达式,使得它不允许在第一个和/或最后一个位置使用连字符和撇号。任何帮助表示赞赏。

"[a-zA-Z][\\s-'a-zA-Z]{0,14}"

3 个答案:

答案 0 :(得分:2)

"[a-zA-Z][\\s'a-zA-Z-]{0,14}(?<!['-])"

(?<!['-])负面的后置断言,要求其前面的字符与['-]不匹配。

答案 1 :(得分:1)

[a-zA-Z][\\s-'a-zA-Z]{0,14}(?<!['-])

答案 2 :(得分:0)

Java正则表达式模式:http://docs.oracle.com/javase/1.4.2/docs/api/java/util/regex/Pattern.html

也许是这样的,我的正则表达不是最好的,可能需要纠正。

public bool checkStringForHorA(String s){
 s.matches("\\^(-'\\).\\^(-'\\)") ? return true: return false;
}

正则表达式应检查它是否以 - 或'开头,或者是否以0到多个字符开头。以'或 - 结尾。如果确实如此,则返回true,否则返回false。