私はPDFを解析していて、多くの文字列を取得してい\t, \r, \n,\s
ます...そして、それらは文字列の両端に表示され、順番に表示されません。だから私は
例を持っていることができます:
「\t\s\t\n
役に立たないデータに囲まれた必要な重要なデータ\r\t\s\s\r\t\t
」
。これらの文字列をトリミングする効率的な方法はありますか? いくつかのシンボルが必要なため、これまでのところ十分ではありません。
public static String trimToLetters(String sourceString) {
int beginIndex = 0;
int endIndex = sourceString.length() - 1;
Pattern p = Pattern.compile("[A-Z_a-z\\;\\.\\(\\)\\*\\?\\:\\\"\\']");
Matcher matcher = p.matcher(sourceString);
if (matcher.find()) {
if (matcher.start() >= 0) {
beginIndex = matcher.start();
StringBuilder sb = new StringBuilder(sourceString);
String sourceReverse = sb.reverse().toString();
matcher = p.matcher(sourceReverse);
if (matcher.find()) {
endIndex = sourceString.length() - matcher.start();
}
}
}
return sourceString.substring(beginIndex, endIndex);
}