2010-08-11 5 views

Répondre

7

Vous pouvez utiliser prospectifs avant. Vous avez pas dit que « saveur » de regex que vous utilisez, voici donc un exemple C#:

var regex = new Regex(@"[A-Z](?=[a-z])"); 
string str = "ABcDef"; 
regex.Replace(str, "?"); 
Console.WriteLine(str); // outputs "A?c?ef" 

De plus, pour les caractères internationaux, vous pouvez utiliser Unicode character classes:

var regex = new Regex(@"\p{Lu}(?=\p{Ll})"); 
+0

Le \ p doit être l owercase, sinon cela signifie la négation. – Markos

+0

@Markos: oups! Bonne prise! –

+0

Merci Dean! C'est exactement ce dont j'avais besoin. Cela m'a sauvé beaucoup de temps car j'étais plutôt coincé ici. –

0
[A-Z][a-z] 

(en supposant des caractères anglais seulement)

0

Je crois que ce est ce que vous cherchez.

([AZ]) [az]

0

En Python:

import re

regex = re.compile ("(: ([AZ]) [az])")

strData = 'abcdefghijk'

print [m.group (1) pour m dans regex.findinter (strData) si m.group (1)]

Questions connexes