This is an automated email from the ASF dual-hosted git repository. cdutz pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/incubator-plc4x.git
The following commit(s) were added to refs/heads/master by this push: new e31e741 PLC4X-56 - [S7] S7Field does not recognize addresses with numElements present e31e741 is described below commit e31e741616c8b771b3b35d6dac8507287f69525b Author: Christofer Dutz <christofer.d...@c-ware.de> AuthorDate: Wed Sep 26 16:48:54 2018 -0400 PLC4X-56 - [S7] S7Field does not recognize addresses with numElements present - Fixed an error in the regular expression for parsing the number of elements. Old version could only read a 0-9 items ... is now fixed. --- .../s7/src/main/java/org/apache/plc4x/java/s7/model/S7Field.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plc4j/protocols/s7/src/main/java/org/apache/plc4x/java/s7/model/S7Field.java b/plc4j/protocols/s7/src/main/java/org/apache/plc4x/java/s7/model/S7Field.java index 8d48c78..1b83374 100644 --- a/plc4j/protocols/s7/src/main/java/org/apache/plc4x/java/s7/model/S7Field.java +++ b/plc4j/protocols/s7/src/main/java/org/apache/plc4x/java/s7/model/S7Field.java @@ -29,9 +29,9 @@ import java.util.regex.Pattern; public class S7Field implements PlcField { private static final Pattern ADDRESS_PATTERN = - Pattern.compile("^%(?<memoryArea>.)(?<transferSizeCode>[XBWD]?)(?<byteOffset>\\d{1,4})(.(?<bitOffset>[0-7]))?:(?<dataType>.+)(\\[(?<numElements>\\d)])?"); + Pattern.compile("^%(?<memoryArea>.)(?<transferSizeCode>[XBWD]?)(?<byteOffset>\\d{1,4})(.(?<bitOffset>[0-7]))?:(?<dataType>[a-z,A-Z]+)(\\[(?<numElements>\\d+)])?"); private static final Pattern DATA_BLOCK_ADDRESS_PATTERN = - Pattern.compile("^%DB(?<blockNumber>\\d{1,4}).DB(?<transferSizeCode>[XBWD]?)(?<byteOffset>\\d{1,4})(.(?<bitOffset>[0-7]))?:(?<dataType>.+)(\\[(?<numElements>\\d)])?"); + Pattern.compile("^%DB(?<blockNumber>\\d{1,4}).DB(?<transferSizeCode>[XBWD]?)(?<byteOffset>\\d{1,4})(.(?<bitOffset>[0-7]))?:(?<dataType>[a-z,A-Z]+)(\\[(?<numElements>\\d+)])?"); public static boolean matches(String fieldString) { return DATA_BLOCK_ADDRESS_PATTERN.matcher(fieldString).matches() ||