2861 |
|
|
2862 |
/(?<=b(?1))xyz(b+)pqrstuvew/ |
/(?<=b(?1))xyz(b+)pqrstuvew/ |
2863 |
|
|
2864 |
|
/(a|bc)\1/SI |
2865 |
|
|
2866 |
|
/(a|bc)\1{2,3}/SI |
2867 |
|
|
2868 |
|
/(a|bc)(?1)/SI |
2869 |
|
|
2870 |
|
/(a|b\1)(a|b\1)/SI |
2871 |
|
|
2872 |
|
/(a|b\1){2}/SI |
2873 |
|
|
2874 |
|
/(a|bbbb\1)(a|bbbb\1)/SI |
2875 |
|
|
2876 |
|
/(a|bbbb\1){2}/SI |
2877 |
|
|
2878 |
|
/^From +([^ ]+) +[a-zA-Z][a-zA-Z][a-zA-Z] +[a-zA-Z][a-zA-Z][a-zA-Z] +[0-9]?[0-9] +[0-9][0-9]:[0-9][0-9]/SI |
2879 |
|
|
2880 |
|
/ (?: [\040\t] | \( |
2881 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
2882 |
|
\) )* # optional leading comment |
2883 |
|
(?: (?: |
2884 |
|
[^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters... |
2885 |
|
(?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom |
2886 |
|
| |
2887 |
|
" (?: # opening quote... |
2888 |
|
[^\\\x80-\xff\n\015"] # Anything except backslash and quote |
2889 |
|
| # or |
2890 |
|
\\ [^\x80-\xff] # Escaped something (something != CR) |
2891 |
|
)* " # closing quote |
2892 |
|
) # initial word |
2893 |
|
(?: (?: [\040\t] | \( |
2894 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
2895 |
|
\) )* \. (?: [\040\t] | \( |
2896 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
2897 |
|
\) )* (?: |
2898 |
|
[^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters... |
2899 |
|
(?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom |
2900 |
|
| |
2901 |
|
" (?: # opening quote... |
2902 |
|
[^\\\x80-\xff\n\015"] # Anything except backslash and quote |
2903 |
|
| # or |
2904 |
|
\\ [^\x80-\xff] # Escaped something (something != CR) |
2905 |
|
)* " # closing quote |
2906 |
|
) )* # further okay, if led by a period |
2907 |
|
(?: [\040\t] | \( |
2908 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
2909 |
|
\) )* @ (?: [\040\t] | \( |
2910 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
2911 |
|
\) )* (?: |
2912 |
|
[^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters... |
2913 |
|
(?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom |
2914 |
|
| \[ # [ |
2915 |
|
(?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff |
2916 |
|
\] # ] |
2917 |
|
) # initial subdomain |
2918 |
|
(?: # |
2919 |
|
(?: [\040\t] | \( |
2920 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
2921 |
|
\) )* \. # if led by a period... |
2922 |
|
(?: [\040\t] | \( |
2923 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
2924 |
|
\) )* (?: |
2925 |
|
[^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters... |
2926 |
|
(?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom |
2927 |
|
| \[ # [ |
2928 |
|
(?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff |
2929 |
|
\] # ] |
2930 |
|
) # ...further okay |
2931 |
|
)* |
2932 |
|
# address |
2933 |
|
| # or |
2934 |
|
(?: |
2935 |
|
[^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters... |
2936 |
|
(?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom |
2937 |
|
| |
2938 |
|
" (?: # opening quote... |
2939 |
|
[^\\\x80-\xff\n\015"] # Anything except backslash and quote |
2940 |
|
| # or |
2941 |
|
\\ [^\x80-\xff] # Escaped something (something != CR) |
2942 |
|
)* " # closing quote |
2943 |
|
) # one word, optionally followed by.... |
2944 |
|
(?: |
2945 |
|
[^()<>@,;:".\\\[\]\x80-\xff\000-\010\012-\037] | # atom and space parts, or... |
2946 |
|
\( |
2947 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
2948 |
|
\) | # comments, or... |
2949 |
|
|
2950 |
|
" (?: # opening quote... |
2951 |
|
[^\\\x80-\xff\n\015"] # Anything except backslash and quote |
2952 |
|
| # or |
2953 |
|
\\ [^\x80-\xff] # Escaped something (something != CR) |
2954 |
|
)* " # closing quote |
2955 |
|
# quoted strings |
2956 |
|
)* |
2957 |
|
< (?: [\040\t] | \( |
2958 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
2959 |
|
\) )* # leading < |
2960 |
|
(?: @ (?: [\040\t] | \( |
2961 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
2962 |
|
\) )* (?: |
2963 |
|
[^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters... |
2964 |
|
(?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom |
2965 |
|
| \[ # [ |
2966 |
|
(?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff |
2967 |
|
\] # ] |
2968 |
|
) # initial subdomain |
2969 |
|
(?: # |
2970 |
|
(?: [\040\t] | \( |
2971 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
2972 |
|
\) )* \. # if led by a period... |
2973 |
|
(?: [\040\t] | \( |
2974 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
2975 |
|
\) )* (?: |
2976 |
|
[^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters... |
2977 |
|
(?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom |
2978 |
|
| \[ # [ |
2979 |
|
(?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff |
2980 |
|
\] # ] |
2981 |
|
) # ...further okay |
2982 |
|
)* |
2983 |
|
|
2984 |
|
(?: (?: [\040\t] | \( |
2985 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
2986 |
|
\) )* , (?: [\040\t] | \( |
2987 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
2988 |
|
\) )* @ (?: [\040\t] | \( |
2989 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
2990 |
|
\) )* (?: |
2991 |
|
[^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters... |
2992 |
|
(?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom |
2993 |
|
| \[ # [ |
2994 |
|
(?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff |
2995 |
|
\] # ] |
2996 |
|
) # initial subdomain |
2997 |
|
(?: # |
2998 |
|
(?: [\040\t] | \( |
2999 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
3000 |
|
\) )* \. # if led by a period... |
3001 |
|
(?: [\040\t] | \( |
3002 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
3003 |
|
\) )* (?: |
3004 |
|
[^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters... |
3005 |
|
(?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom |
3006 |
|
| \[ # [ |
3007 |
|
(?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff |
3008 |
|
\] # ] |
3009 |
|
) # ...further okay |
3010 |
|
)* |
3011 |
|
)* # further okay, if led by comma |
3012 |
|
: # closing colon |
3013 |
|
(?: [\040\t] | \( |
3014 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
3015 |
|
\) )* )? # optional route |
3016 |
|
(?: |
3017 |
|
[^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters... |
3018 |
|
(?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom |
3019 |
|
| |
3020 |
|
" (?: # opening quote... |
3021 |
|
[^\\\x80-\xff\n\015"] # Anything except backslash and quote |
3022 |
|
| # or |
3023 |
|
\\ [^\x80-\xff] # Escaped something (something != CR) |
3024 |
|
)* " # closing quote |
3025 |
|
) # initial word |
3026 |
|
(?: (?: [\040\t] | \( |
3027 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
3028 |
|
\) )* \. (?: [\040\t] | \( |
3029 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
3030 |
|
\) )* (?: |
3031 |
|
[^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters... |
3032 |
|
(?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom |
3033 |
|
| |
3034 |
|
" (?: # opening quote... |
3035 |
|
[^\\\x80-\xff\n\015"] # Anything except backslash and quote |
3036 |
|
| # or |
3037 |
|
\\ [^\x80-\xff] # Escaped something (something != CR) |
3038 |
|
)* " # closing quote |
3039 |
|
) )* # further okay, if led by a period |
3040 |
|
(?: [\040\t] | \( |
3041 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
3042 |
|
\) )* @ (?: [\040\t] | \( |
3043 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
3044 |
|
\) )* (?: |
3045 |
|
[^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters... |
3046 |
|
(?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom |
3047 |
|
| \[ # [ |
3048 |
|
(?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff |
3049 |
|
\] # ] |
3050 |
|
) # initial subdomain |
3051 |
|
(?: # |
3052 |
|
(?: [\040\t] | \( |
3053 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
3054 |
|
\) )* \. # if led by a period... |
3055 |
|
(?: [\040\t] | \( |
3056 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
3057 |
|
\) )* (?: |
3058 |
|
[^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters... |
3059 |
|
(?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom |
3060 |
|
| \[ # [ |
3061 |
|
(?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff |
3062 |
|
\] # ] |
3063 |
|
) # ...further okay |
3064 |
|
)* |
3065 |
|
# address spec |
3066 |
|
(?: [\040\t] | \( |
3067 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
3068 |
|
\) )* > # trailing > |
3069 |
|
# name and address |
3070 |
|
) (?: [\040\t] | \( |
3071 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
3072 |
|
\) )* # optional trailing comment |
3073 |
|
/xSI |
3074 |
|
|
3075 |
|
/<tr([\w\W\s\d][^<>]{0,})><TD([\w\W\s\d][^<>]{0,})>([\d]{0,}\.)(.*)((<BR>([\w\W\s\d][^<>]{0,})|[\s]{0,}))<\/a><\/TD><TD([\w\W\s\d][^<>]{0,})>([\w\W\s\d][^<>]{0,})<\/TD><TD([\w\W\s\d][^<>]{0,})>([\w\W\s\d][^<>]{0,})<\/TD><\/TR>/isIS |
3076 |
|
|
3077 |
|
"(?>.*/)foo"SI |
3078 |
|
|
3079 |
|
/(?(?=[^a-z]+[a-z]) \d{2}-[a-z]{3}-\d{2} | \d{2}-\d{2}-\d{2} ) /xSI |
3080 |
|
|
3081 |
|
/(?:(?:(?:(?:(?:(?:(?:(?:(?:(a|b|c))))))))))/iSI |
3082 |
|
|
3083 |
|
/(?:c|d)(?:)(?:aaaaaaaa(?:)(?:bbbbbbbb)(?:bbbbbbbb(?:))(?:bbbbbbbb(?:)(?:bbbbbbbb)))/SI |
3084 |
|
|
3085 |
|
/<a[\s]+href[\s]*=[\s]* # find <a href= |
3086 |
|
([\"\'])? # find single or double quote |
3087 |
|
(?(1) (.*?)\1 | ([^\s]+)) # if quote found, match up to next matching |
3088 |
|
# quote, otherwise match up to next space |
3089 |
|
/isxSI |
3090 |
|
|
3091 |
|
/^(?!:) # colon disallowed at start |
3092 |
|
(?: # start of item |
3093 |
|
(?: [0-9a-f]{1,4} | # 1-4 hex digits or |
3094 |
|
(?(1)0 | () ) ) # if null previously matched, fail; else null |
3095 |
|
: # followed by colon |
3096 |
|
){1,7} # end item; 1-7 of them required |
3097 |
|
[0-9a-f]{1,4} $ # final hex number at end of string |
3098 |
|
(?(1)|.) # check that there was an empty component |
3099 |
|
/xiIS |
3100 |
|
|
3101 |
/-- End of testinput2 --/ |
/-- End of testinput2 --/ |