use strict;
my $str = '8f6d78acd5d8cf4ed6d55a5dfb4b9e8049722e77ee60017fbed6c232fd7b9b8bfc4fcc45a1e49565a001f94c0005892becf76f405a9e8894c744532872c204ef5fdb9aea3fa3f628f5f6abcd1f1b2015f3e5f56a05376761a8ffb79b7d0c96c06275e57ee118d3eb10989c4cd9181af176d4cbc12f475f1b43934acb8a57fd4d9dc18d2b8e9d5b02df5b90748a91ef09ebc7046322bf88295eb1c8b2a1b2c99c906a1b3694e3b11f20179dadad00ecdf774e1016f91b95af2b65051a3f65a56e05bc9ece03afad24b70e55912290119a0170c01fd0931e88a807e818c6ceab6cde61716a5f14b5d2b3b68e98b931556fe0913eb0e62720b3f38219a8e405de04
sadsfd3
8f6d78acd5d8cf4ed6d55a5dfb4b9e8049722e77ee60017fbed6c232fd7b9b8bfc4fcc45a1e49565a001f94c0005892becf76f405a9e8894c744532872c204ef5fdb9aea3fa3f628f5f6abcd1f1b2015f3e5f56a05376761a8ffb79b7d0c96c06275e57ee118d3eb10989c4cd9181af176d4cbc12f475f1b43934acb8a57fd4d9dc18d2b8e9d5b02df5b90748a91ef09ebc7046322bf88295eb1c8b2a1b2c99c906a1b3694e3b11f20179dadad00ecdf774e1016f91b95af2b65051a3f65a56e05bc9ece03afad24b70e55912290119a0170c01fd0931e88a807e818c6ceab6cde61716a5f14b5d2b3b68e98b931556fe0913eb0e62720b3f38219a8e405de04
dadadad
sfsfsdgfdgfgfg
Zf6d78acd5d8cf4ed6d55a5dfb4b9e8049722e77ee60017fbed6c232fd7b9b8bfc4fcc45a1e49565a001f94c0005892becf76f405a9e8894c744532872c204ef5fdb9aea3fa3f628f5f6abcd1f1b2015f3e5f56a05376761a8ffb79b7d0c96c06275e57ee118d3eb10989c4cd9181af176d4cbc12f475f1b43934acb8a57fd4d9dc18d2b8e9d5b02df5b90748a91ef09ebc7046322bf88295eb1c8b2a1b2c99c906a1b3694e3b11f20179dadad00ecdf774e1016f91b95af2b65051a3f65a56e05bc9ece03afad24b70e55912290119a0170c01fd0931e88a807e818c6ceab6cde61716a5f14b5d2b3b68e98b931556fe0913eb0e62720b3f38219a8e405de04
ZzzZ78acd5d8cf4ed6d55a5dfb4b9e8049722e77ee60017fbed6c232fd7b9b8bfc4fcc45a1e49565a001f94c0005892becf76f405a9e8894c744532872c204ef5fdb9aea3fa3f628f5f6abcd1f1b2015f3e5f56a05376761a8ffb79b7d0c96c06275e57ee118d3eb10989c4cd9181af176d4cbc12f475f1b43934acb8a57fd4d9dc18d2b8e9d5b02df5b90748a91ef09ebc7046322bf88295eb1c8b2a1b2c99c906a1b3694e3b11f20179dadad00ecdf774e1016f91b95af2b65051a3f65a56e05bc9ece03afad24b70e55912290119a0170c01fd0931e88a807e818c6ceab6cde61716a5f14b5d2b3b68e98b931556fe0913eb0e62720b3f38219a8e405de04';
my $regex = qr/[0-9a-fA-F]{512}$/mp;
if ( $str =~ /$regex/g ) {
print "Whole match is ${^MATCH} and its start/end positions can be obtained via \$-[0] and \$+[0]\n";
# print "Capture Group 1 is $1 and its start/end positions can be obtained via \$-[1] and \$+[1]\n";
# print "Capture Group 2 is $2 ... and so on\n";
}
# ${^POSTMATCH} and ${^PREMATCH} are also available with the use of '/p'
# Named capture groups can be called via $+{name}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Perl, please visit: http://perldoc.perl.org/perlre.html