alfinete
21-12-2007, 10:35
tenho esta expressaõ regular que so aceita catacteres e espaços
[^a-zA-Z\\s]
mas eu quero que ela aceite varias strings de caracteres caracteres alfa separadas entre si no maximo com um espaço.
agradecia um help
ex:
eu sou alf - expressão valida
eu sou alf- expressão inválida
arkannis
21-12-2007, 19:30
nao consegui perceber muito bem a tua duvida...
Mas parece-me que isto te posso ajudar a resolver:
Greedy quantifiers
X? X, once or not at all
X* X, zero or more times
X+ X, one or more times
X{n} X, exactly n times
X{n,} X, at least n times
X{n,m} X, at least n but not more than m times
retirado de:
http://java.sun.com/j2se/1.4.2/docs/api/java/util/regex/Pattern.html
[^a-zA-Z\\s] <- é impressão minha ou isto NÃO aceita caracteres nem espaços? (tem o ^ no início, neste caso não significa início de linha mas o contrário de)
alfinete
21-12-2007, 21:25
aceita caracteres e espaços sim
a minha duvida para quem não percebeu é:
quero uma expressão regular que so aceite caracteres tipo letras, e que entre os caracteres so possa por apenas um espaço
ex:
expressão valida : eu sou eu : só contem um espaço entre cada conjunto de caracteres
expressão invalida : eu sou eu : ente "eu" e "sou" contem dois espaços
AliFromCairo
22-12-2007, 01:25
A primeira que me ocorre é a seguinte:
[A-Za-z]+(\s[A-Za-z]+)*
Espero que ajude.