我正在尝试获取与这两个正则表达式不匹配的所有字符串:
\d{2}[-]\d{2}[-]\d{4}
\d{2}[:]\d{2}
我尝试过使用:
/^((?!REGULAR_EXPRESSION_HERE).)*$/
但是不起作用。
任何人都知道应该怎么做?我不能使用python的re.split()函数,因为我正在使用Scrapy的正则表达式工具。
答案 0 :(得分:1)
试试这个正则表达式:
(?P<date>\d{2}-\d{2}-\d{4})|(?P<time>\d{2}:\d{2})
#!/usr/local/bin/python
import re
text=("01-01-2014 13:15\n"
"foo bar\n"
"\n"
"Some text: blah bla !\n"
"Some ranges:\n"
"1-\n"
"-1\n"
"12-\n"
"-12\n"
"1-2\n"
"12-3\n"
"Strange date: 08-99-1999\n")
pattern = re.compile(r"(?P<date>\d{2}-\d{2}-\d{4})|(?P<time>\d{2}:\d{2})")
result = pattern.sub("", text)
print( result )
\n
foo bar\n
\n
Some text: blah bla !\n
Some ranges:\n
1-\n
-1\n
12-\n
-12\n
1-2\n
12-3\n
Strange date: \n
NOTA:我添加了\n
,否则答案中不会显示这些内容。
经过测试 Python 2.7.4 和 Python 3.2.3