应用字符串掩码

时间:2014-12-26 15:14:45

标签: java string masking

我想应用某种字符串掩码,我有两个字符串,第一个是final &#34; xx&#34; 和第二个可能是一个字母或两个字母字符串,如果它只是一个字母(例如&#39; y &#39;)我希望结果字符串为< strong>&#34; xy&#34; 如果它由两个字母组成(例如&#39; yz &#39;)我希望结果字符串为< strong>&#34; yz&#34; ,所以,它将如下所示:

final String a = "xx";
String b = "y";
string c = "yz";

将掩码应用于(a)和(b

String result = "xy"

将掩码应用于(a)和(c

String result = "yz"

我知道有很多解决方法可以检查字符串长度,但是我正在寻找一种直接的方法来实现它(不使用if-else)。

2 个答案:

答案 0 :(得分:2)

您应该考虑使用REGEX解决方案来解决您的问题。使用REGEX,您可以检查您的charactors的长度和位置,然后相应地采取行动,而不需要使用一堆if-then-else语句。

使用许多在线网站测试正则表达式非常容易。以下是一个很好的例子:

regex tester

答案 1 :(得分:1)

String xx = "xx";
String yz = "yz"; // or "y"
String res = (xx + yz).substring(xx.length()+yz.length() - 2);

这确实会产生“xy”或“yz”,但这可能是由于您选择了样本数据而不适用于您可能想到的更一般的情况。 - 如果是这样,请务必在问题中添加一些解释。

否则 - if语句有什么可怕之处?