github.com/cockroachdb/cockroach@v20.2.0-alpha.1+incompatible/pkg/sql/sem/tree/testdata/eval/similar (about)

     1  # SIMILAR TO and NOT SIMILAR TO
     2  
     3  eval
     4  'abc' SIMILAR TO 'abc'
     5  ----
     6  true
     7  
     8  eval
     9  'abc' SIMILAR TO 'a'
    10  ----
    11  false
    12  
    13  eval
    14  'abc' SIMILAR TO '%(b|d)%'
    15  ----
    16  true
    17  
    18  eval
    19  'abc' SIMILAR TO '(b|c)%'
    20  ----
    21  false
    22  
    23  eval
    24  'abc' NOT SIMILAR TO '%(b|d)%'
    25  ----
    26  false
    27  
    28  eval
    29  'abc' NOT SIMILAR TO '(b|c)%'
    30  ----
    31  true
    32  
    33  # SIMILAR TO with ESCAPE
    34  
    35  eval
    36  similar_to_escape('abc', 'abc', '')
    37  ----
    38  true
    39  
    40  eval
    41  similar_to_escape('a\b', 'a\b', '')
    42  ----
    43  true
    44  
    45  eval
    46  similar_to_escape('a\b', '%\%', '')
    47  ----
    48  true
    49  
    50  eval
    51  similar_to_escape('a\b', '_\_', '')
    52  ----
    53  true
    54  
    55  eval
    56  similar_to_escape('\\\', '\{3,}', '')
    57  ----
    58  true
    59  
    60  eval
    61  similar_to_escape('abc', '[\a\b\c]+', '')
    62  ----
    63  true
    64  
    65  eval
    66  similar_to_escape('%abc', '%%a__', '%')
    67  ----
    68  true
    69  
    70  eval
    71  similar_to_escape('abc', '%(b|d)%', '|')
    72  ----
    73  false
    74  
    75  eval
    76  similar_to_escape('a(b)c', '%((_()_', '(')
    77  ----
    78  true
    79  
    80  eval
    81  similar_to_escape('a||bc', '%||%', '|')
    82  ----
    83  true
    84  
    85  eval
    86  similar_to_escape('a||bc', '%||+%', '|')
    87  ----
    88  true
    89  
    90  eval
    91  similar_to_escape('a||bc', '%||*%', '|')
    92  ----
    93  true
    94  
    95  eval
    96  similar_to_escape('abc', '%||+%', '|')
    97  ----
    98  false
    99  
   100  eval
   101  similar_to_escape('abc', '%||*%', '|')
   102  ----
   103  true
   104  
   105  eval
   106  similar_to_escape('a|c', '(a||b*)%', '|')
   107  ----
   108  true
   109  
   110  eval
   111  similar_to_escape('(abc)', '|(_+|)', '|')
   112  ----
   113  true
   114  
   115  eval
   116  similar_to_escape('a*bc', '%|*b?%', '|')
   117  ----
   118  true
   119  
   120  eval
   121  similar_to_escape('|||', '||*', '|')
   122  ----
   123  true
   124  
   125  eval
   126  similar_to_escape('a|b|c', '_||+_||?||?_', '|')
   127  ----
   128  true
   129  
   130  eval
   131  similar_to_escape('a|b|c', '_q|+_q|?q|?_', 'q')
   132  ----
   133  true
   134  
   135  eval
   136  similar_to_escape('aaaa{bbbb}cccc', 'a{4}|{b{4,4}|}c{4,}', '|')
   137  ----
   138  true
   139  
   140  eval
   141  similar_to_escape('%b|', '%b||', '|')
   142  ----
   143  true
   144  
   145  eval
   146  similar_to_escape('%b漢', '%b漢漢', '漢')
   147  ----
   148  true
   149  
   150  eval
   151  similar_to_escape('%b漢aaa', '漢%b漢漢%', '漢')
   152  ----
   153  true
   154  
   155  eval
   156  similar_to_escape('%b漢aaa', '漢%b漢漢%漢', '漢')
   157  ----
   158  true
   159  
   160  eval
   161  similar_to_escape('_ab%c', '漢__%漢%_漢', '漢')
   162  ----
   163  true
   164  
   165  # NOT SIMILAR TO with ESCAPE
   166  
   167  eval
   168  not_similar_to_escape('abc', 'abc', '')
   169  ----
   170  false
   171  
   172  eval
   173  not_similar_to_escape('a\b', 'a\b', '')
   174  ----
   175  false
   176  
   177  eval
   178  not_similar_to_escape('a\b', '%\%', '')
   179  ----
   180  false
   181  
   182  eval
   183  not_similar_to_escape('a\b', '_\_', '')
   184  ----
   185  false
   186  
   187  eval
   188  not_similar_to_escape('\\\', '\{3,}', '')
   189  ----
   190  false
   191  
   192  eval
   193  not_similar_to_escape('abc', '[\a\b\c]+', '')
   194  ----
   195  false
   196  
   197  eval
   198  not_similar_to_escape('%abc', '%%a__', '%')
   199  ----
   200  false
   201  
   202  eval
   203  not_similar_to_escape('abc', '%(b|d)%', '|')
   204  ----
   205  true
   206  
   207  eval
   208  not_similar_to_escape('a(b)c', '%((_()_', '(')
   209  ----
   210  false
   211  
   212  eval
   213  not_similar_to_escape('a||bc', '%||%', '|')
   214  ----
   215  false
   216  
   217  eval
   218  not_similar_to_escape('a||bc', '%||+%', '|')
   219  ----
   220  false
   221  
   222  eval
   223  not_similar_to_escape('a||bc', '%||*%', '|')
   224  ----
   225  false
   226  
   227  eval
   228  not_similar_to_escape('abc', '%||+%', '|')
   229  ----
   230  true
   231  
   232  eval
   233  not_similar_to_escape('abc', '%||*%', '|')
   234  ----
   235  false
   236  
   237  eval
   238  not_similar_to_escape('a|c', '(a||b*)%', '|')
   239  ----
   240  false
   241  
   242  eval
   243  not_similar_to_escape('(abc)', '|(_+|)', '|')
   244  ----
   245  false
   246  
   247  eval
   248  not_similar_to_escape('a*bc', '%|*b?%', '|')
   249  ----
   250  false
   251  
   252  eval
   253  not_similar_to_escape('|||', '||*', '|')
   254  ----
   255  false
   256  
   257  eval
   258  not_similar_to_escape('a|b|c', '_||+_||?||?_', '|')
   259  ----
   260  false
   261  
   262  eval
   263  not_similar_to_escape('a|b|c', '_q|+_q|?q|?_', 'q')
   264  ----
   265  false
   266  
   267  eval
   268  not_similar_to_escape('aaaa{bbbb}cccc', 'a{4}|{b{4,4}|}c{4,}', '|')
   269  ----
   270  false
   271  
   272  eval
   273  not_similar_to_escape('%b|', '%b||', '|')
   274  ----
   275  false
   276  
   277  eval
   278  not_similar_to_escape('%b漢', '%b漢漢', '漢')
   279  ----
   280  false
   281  
   282  eval
   283  not_similar_to_escape('%b漢aaa', '漢%b漢漢%', '漢')
   284  ----
   285  false
   286  
   287  eval
   288  not_similar_to_escape('%b漢aaa', '漢%b漢漢%漢', '漢')
   289  ----
   290  false
   291  
   292  eval
   293  not_similar_to_escape('_ab%c', '漢__%漢%_漢', '漢')
   294  ----
   295  false