重复字符可以是[a to z]
,[0 to 9]
或任何特殊字符。
例如:
String a = "CCCCCCgshdbuasvbd";
考虑C = [a to z],[0 to 9]
或类似~!@#$%*&()_-><?
的内容。
我需要在字符串中删除“如果出现超过4次的字符串中的任何重复前导字符”。
如何使用正则表达式完成此操作?
答案 0 :(得分:1)
怎么样:
搜索:^(.)\1{3,}
替换:<NOTHING>
这将替换字符串开头的任何字符,无效时出现4次或更多次。
答案 1 :(得分:1)
答案 2 :(得分:0)
使用java的基于regex的replaceAll()方法。正则表达式应该通过允许任何字母和数字(^
)
[a-Z0-9]
)
然后你知道它开始的任何一个字符需要重复至少3次({3,}
)
您正在替换与空字符串匹配的任何内容(即删除它)
str = str.replaceAll("^([a-Z0-9])(\\1){3,}","");