问题描述
在Java中,我想在字符串后面插入一个空格,但前提是字符串包含“MAVERICK”。 我认为使用使用正则表达式作为参数的replaceAll()方法会做到这一点,但我并没有真正得到它。
这就是我所拥有的
String s = "MAVERICKA";
//the last character can be from the following set [A,Z,T,SE,EX]
所以,我希望函数返回字符串“MAVERICK A”或“MAVERICK EX”。 防爆。
- MAVERICKA - > MAVERICK A.
- MAVERICKEX - > MAVERICK EX
此外,如果字符串格式正确,则不应插入空格。 即
- MAVERICK A - > MAVERICK A.
1楼
怎么样的
s = s.replaceAll("MAVERICK(A|Z|T|SE|EX)", "MAVERICK $1");
2楼
另一个不知道尾随字母的解决方案是:
String spaced_out = s.replaceAll("(MAVERICK)(?!\s|$)", "$1 ");
3楼
你的意思是这样的:
String r = s.replaceAll("(MAVERICK)([AZT]|SE|EX)", "$1 $2");