无法使用pyperclip和regex搜索模式?
虽然这看起来很粗略,但我正在为我的MGMT288类执行此操作,并尝试创建一个程序,从一组复制的文本中搜索SSN。我几乎没有python背景,只是在探索正则表达式和扩展pyperclip。目前,我的代码整体如下所示无法使用pyperclip和regex搜索模式?,regex,python-2.7,pyperclip,Regex,Python 2.7,Pyperclip,虽然这看起来很粗略,但我正在为我的MGMT288类执行此操作,并尝试创建一个程序,从一组复制的文本中搜索SSN。我几乎没有python背景,只是在探索正则表达式和扩展pyperclip。目前,我的代码整体如下所示 import re,pyperclip SSNREG=re.compile(r'(\d{3})(-)?(\d{2})(-)?(\d{4})') SSN=[] CB=pyperclip.paste() for groups in SSNREG.findall(CB): SSN
import re,pyperclip
SSNREG=re.compile(r'(\d{3})(-)?(\d{2})(-)?(\d{4})')
SSN=[]
CB=pyperclip.paste()
for groups in SSNREG.findall(CB):
SSN.append(groups[0])
if len(SSN)>0:
pyperclip.copy('\n'.join(CB))
print('Copied '+len(CB)+' SSN\'s to clipboard!')
print('\n'.join(CB))
else:
print('There were no SSN\'s to be found in the text.')
每当我用破折号复制了一个3-2-4位数的数字时,它仍然会打印出剪贴板中没有SSN,我也不知道出了什么问题
我刚刚将/d改为\d,但它似乎仍然没有找到任何内容。您必须使用反斜杠
\d
来匹配数字。如果您不需要捕获组并且破折号不是可选的,那么匹配3-2-4的数字可以是\d{3}-\d{2}-\d{4}
我认为应该是\d
而不是/d