3 ms·
"Ain't ain't a word 'cause it don't match the regex." BTW, should be "\b\w+\b". The \b is a zero-width match for the start or end of a word. Your pattern requi
by eesmith 2y ago
"Ain't ain't a word 'cause it don't match the regex."
BTW, should be "\b\w+\b". The \b is a zero-width match for the start or end of a word. Your pattern requires a space before and after:
>>> import re
>>> re.compile(r"\b\w+\b").findall("What's the problem?")
['What', 's', 'the', 'problem']
>>> re.compile(r"\s\w+\s").findall("What's the problem?")
[' the ']
- flir 2y agoThat makes sense. I was trying to translate "A word is a group of letters with whitespace on either side" into regex. I was being facetious, obviously, but you've already identified a serious problem with that definition (is "what's" two words or one?)