mirror of
				https://github.com/postgres/postgres.git
				synced 2025-11-03 09:13:20 +03:00 
			
		
		
		
	Reported-by: Michael Paquier Discussion: https://postgr.es/m/ZZKTDPxBBMt3C0J9@paquier.xyz Backpatch-through: 12
		
			
				
	
	
		
			57 lines
		
	
	
		
			846 B
		
	
	
	
		
			Perl
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			57 lines
		
	
	
		
			846 B
		
	
	
	
		
			Perl
		
	
	
		
			Executable File
		
	
	
	
	
#!/usr/bin/perl
 | 
						|
 | 
						|
# Copyright (c) 2021-2024, PostgreSQL Global Development Group
 | 
						|
 | 
						|
use strict;
 | 
						|
use warnings FATAL => 'all';
 | 
						|
 | 
						|
my $integer = '[+-]?[0-9]+';
 | 
						|
my $real = '[+-]?[0-9]+\.[0-9]+';
 | 
						|
 | 
						|
my $RANGE = '(\.\.)(\.)?';
 | 
						|
my $PLUMIN = q(\'\+\-\');
 | 
						|
my $FLOAT = "(($integer)|($real))([eE]($integer))?";
 | 
						|
my $EXTENSION = '<|>|~';
 | 
						|
 | 
						|
my $boundary = "($EXTENSION)?$FLOAT";
 | 
						|
my $deviation = $FLOAT;
 | 
						|
 | 
						|
my $rule_1 = $boundary . $PLUMIN . $deviation;
 | 
						|
my $rule_2 = $boundary . $RANGE . $boundary;
 | 
						|
my $rule_3 = $boundary . $RANGE;
 | 
						|
my $rule_4 = $RANGE . $boundary;
 | 
						|
my $rule_5 = $boundary;
 | 
						|
 | 
						|
 | 
						|
print "$rule_5\n";
 | 
						|
while (<>)
 | 
						|
{
 | 
						|
 | 
						|
	#  s/ +//g;
 | 
						|
	if (/^($rule_1)$/)
 | 
						|
	{
 | 
						|
		print;
 | 
						|
	}
 | 
						|
	elsif (/^($rule_2)$/)
 | 
						|
	{
 | 
						|
		print;
 | 
						|
	}
 | 
						|
	elsif (/^($rule_3)$/)
 | 
						|
	{
 | 
						|
		print;
 | 
						|
	}
 | 
						|
	elsif (/^($rule_4)$/)
 | 
						|
	{
 | 
						|
		print;
 | 
						|
	}
 | 
						|
	elsif (/^($rule_5)$/)
 | 
						|
	{
 | 
						|
		print;
 | 
						|
	}
 | 
						|
	else
 | 
						|
	{
 | 
						|
		print STDERR "error in $_\n";
 | 
						|
	}
 | 
						|
 | 
						|
}
 |