我可以使用什么正则表达式来查找大写后跟小写的出现?
例如:
ABcDe
在这里,我希望找到'B'和'D'
答案 0 :(得分:8)
您可以使用前瞻性前瞻。你还没有说过你正在使用的正则表达式的“味道”,所以这里有一个C#例子:
var regex = new Regex(@"[A-Z](?=[a-z])");
string str = "ABcDef";
regex.Replace(str, "?");
Console.WriteLine(str); // outputs "A?c?ef"
此外,对于国际字符,您可以使用Unicode character classes:
var regex = new Regex(@"\p{Lu}(?=\p{Ll})");
答案 1 :(得分:0)
[A-Z][a-z]
(仅假设英文字符)
答案 2 :(得分:0)
我相信这就是你要找的东西。
([A-Z])[A-Z]
答案 3 :(得分:0)
在Python中:
导入重新
regex = re.compile(“(?:( [A-Z])[a-z])”)
strdata ='ABcDefGHIjk'
打印[m.group(1)for m in regex.findinter(strdata)if m.group(1)]
答案 4 :(得分:0)
在Javascript中,您可以执行以下操作:
let test_string = "This$IsTheTestForTest_purpose";
test_string.replace(/[\W_]|([a-z])(?=[A-Z])/g, "$1 ")
// console.log(test_string)
// This Is The Test For Test purpose