diff --git a/scripts/remote-gdb b/scripts/remote-gdb
index ce96dd2c436ce29d2e4ac818384a5e31658a0c9b..cd59033e7a5399d0ee6206f219120fa1deeea359 100755
--- a/scripts/remote-gdb
+++ b/scripts/remote-gdb
@@ -14,7 +14,7 @@ if( opendir SD, "$Bin/../staging_dir" )
 {
 	my ( $tid, $arch, $libc, @arches );
 
-	if( $ARGV[1] =~ m!\btarget-(.+?)_(([^_]+libc|musl)[^/]+)\b!i )
+	if( $ARGV[1] =~ m!\btarget-(.+?)_(([^/_]+libc|musl)[^/]+)\b!i )
 	{
 		print("Using target $1 ($2)\n");
 		($arch, $libc) = ($1, $2);
@@ -26,7 +26,7 @@ if( opendir SD, "$Bin/../staging_dir" )
 
 		while( defined( my $e = readdir SD ) )
 		{
-			if( -d "$Bin/../staging_dir/$e" && $e =~ /^target-(.+?)_(([^_]+.libc|musl)+)/i )
+			if( -d "$Bin/../staging_dir/$e" && $e =~ /^target-(.+?)_(([^_]+libc|musl).+)/i )
 			{
 				push @arches, [ $1, $2 ];
 				printf(" %2d) %s (%s)\n", @arches + 0, $1, $2);