有人知道将字符串转换为仅字符(a-zA-Z)字符串的函数或库吗?也许有一个BaseN实现符合我的要求。
也许我没有把它写成如此清晰,所以我再试一次。我需要一种编码的方法,例如JGHSDJ67-878DUSDd-3434到一个像aaazzzttteeehhheeerrr这样的字符串(此处不允许使用数字) 其次,我需要一种方法来解码" aaazzzttteeeehhheeerrr"回到JGHSDJ67-878DUSDd-3434
Base32看起来不错,但Base32包含数值,例如 " JGHSDJ67-878DUSDd-3434"将是" JJDUQU2EJI3DOLJYG44EIVKTIRSC2MZUGM2A ====" Base32编码。如您所见,仍然存在数值,因为它们是在BASE32中定义的。所以我要找的是一种仅基于字符a-z的编码。
答案 0 :(得分:1)
这可能有效
String newString = yourString.replaceAll("[^a-zA-Z]","");
我没有对它进行过测试,但我的想法是使用Java replaceAll函数来替换任何不是字符的东西。我知道你要求一个库但是当你用Java标记它时我假设你可以使用一些代码吗?
编辑:上面的代码将获取您的字符串并删除任何非a-z或A-Z的字符。
答案 1 :(得分:1)
也许是这样的:
String hello = "Hello!! :)";
BigInteger bi = new BigInteger(hello.getBytes());
String base32 = bi.toString(32);
这会将字符串的字节代码转换为单个二进制数,然后在基数32中格式化该数字。
答案 2 :(得分:0)
是否要删除所有数字和特殊字符?
试试这个:String resultString = subjectString.replaceAll("\\P{L}", "");