Author: msahyoun
Date: Wed Mar 25 10:41:25 2026
New Revision: 1932538
Log:
PDFBOX-5660: optimize/remove regex
Modified:
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/PDFStreamParser.java
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/handlers/PDFreeTextAppearanceHandler.java
pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/TextToPDF.java
Modified:
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/PDFStreamParser.java
==============================================================================
---
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/PDFStreamParser.java
Wed Mar 25 10:12:54 2026 (r1932537)
+++
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/PDFStreamParser.java
Wed Mar 25 10:41:25 2026 (r1932538)
@@ -47,7 +47,7 @@ public class PDFStreamParser extends COS
*/
private static final Logger LOG =
LogManager.getLogger(PDFStreamParser.class);
- private static final Pattern NUMBER_PATTERN =
Pattern.compile("^\\d*\\.?\\d*$");
+ private static final Pattern NUMBER_PATTERN =
Pattern.compile("^(?>\\d*)\\.?(?>\\d*)$");
private static final int MAX_BIN_CHAR_TEST_LENGTH = 10;
private final byte[] binCharTestArr = new byte[MAX_BIN_CHAR_TEST_LENGTH];
private int inlineImageDepth = 0;
Modified:
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/handlers/PDFreeTextAppearanceHandler.java
==============================================================================
---
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/handlers/PDFreeTextAppearanceHandler.java
Wed Mar 25 10:12:54 2026 (r1932537)
+++
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/handlers/PDFreeTextAppearanceHandler.java
Wed Mar 25 10:41:25 2026 (r1932538)
@@ -53,7 +53,7 @@ public class PDFreeTextAppearanceHandler
private static final Logger LOG =
LogManager.getLogger(PDFreeTextAppearanceHandler.class);
private static final Pattern COLOR_PATTERN =
- Pattern.compile(".*color\\:\\s*\\#([0-9a-fA-F]{6}).*");
+ Pattern.compile("color:\\s*+#([0-9a-fA-F]{6})");
private float fontSize = 10;
private COSName fontName = COSName.HELV;
Modified:
pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/TextToPDF.java
==============================================================================
--- pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/TextToPDF.java
Wed Mar 25 10:12:54 2026 (r1932537)
+++ pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/TextToPDF.java
Wed Mar 25 10:41:25 2026 (r1932538)
@@ -282,7 +282,7 @@ public class TextToPDF implements Callab
// the text.
textIsEmpty = false;
- String[] lineWords = nextLine.replaceAll("[\\n\\r]+$", "").split("
", -1);
+ String[] lineWords = nextLine.split(" ", -1);
int lineIndex = 0;
while (lineIndex < lineWords.length)
{