import re
rx = r"\b(?:abc|def)\s+rules\s+(\d*\.*?\d+(?:(?:,|\s*and)\s*\d*\.*?\d+)*)"
s = "abc rules 2.3, 4.5, 6.7, 8.9 and def rules 3.6, 6.7, 8.9 and 10.11."
print([re.split(r'\s*(?:,|\band\b)\s*', x) for x in re.findall(rx, s)])
aW1wb3J0IHJlCnJ4ID0gciJcYig/OmFiY3xkZWYpXHMrcnVsZXNccysoXGQqXC4qP1xkKyg/Oig/Oix8XHMqYW5kKVxzKlxkKlwuKj9cZCspKikiCnMgPSAiYWJjIHJ1bGVzIDIuMywgNC41LCA2LjcsIDguOSBhbmQgZGVmIHJ1bGVzIDMuNiwgNi43LCA4LjkgYW5kIDEwLjExLiIKcHJpbnQoW3JlLnNwbGl0KHInXHMqKD86LHxcYmFuZFxiKVxzKicsIHgpIGZvciB4IGluIHJlLmZpbmRhbGwocngsIHMpXSk=