Create a program that returns True if a given input meets the following specifications, and False otherwise:
- The count of numeric characters (0-9) in the input matches a Fibonacci number.
- The count of non-numeric characters !(0-9) in the input matches the Fibonacci number immediately preceding the count of numeric characters.
Additional Rules:
- Your program must use the proper Fibonacci sequence, per OEIS - that is, the Fibonacci sequence must start with
0, 1, 1, 2, ...
- If the numerics or non-numerics count is 1, the following must occur:
- Numerics 1: Non-numeric count of 0 or 1 should be handled as True - all others False.
- Non-Numerics 1: Numerics count of 1 or 2 should be handled as True - all others False.
- Input may be taken however you like, but the program must be capable of handling any arbitrary text.
- True/False are not case-sensitive, and can be substituted with 1/0 or T/F.
- You may only hard-code up to two Fibonacci numbers.
- Output may only be True/False or 1/0 or T/F. Any additional text or visible errors generated is unacceptable.