我有一个以下正则表达式,它在文本文件中找到日期:
(\d{4})-(\d{2})-(\d{2}) (\d{2}):(\d{2}):(\d{2})
我想找到此搜索字符串之前的字符。任何人都可以指出我正确的方向。前面的字符是a,(逗号),我想搜索和替换。
答案 0 :(得分:2)
您需要使用positive lookahead来完成此任务:
/,(?=(\d{4})-(\d{2})-(\d{2}) (\d{2}):(\d{2}):(\d{2}))/
此模式将与逗号匹配,但前提是它后跟与您在问题中提供的模式匹配的内容。 (注意,使用搜索/替换,它不会替换日期)
答案 1 :(得分:1)
只需将,
添加到正则表达式中即可。然后它只匹配以逗号开头的日期实例:
/,((\d{4})-(\d{2})-(\d{2}) (\d{2}):(\d{2}):(\d{2}))/
原始正则表达式包含在()
中,可作为第一个子匹配。