我正在解析 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);
}