我有以下句子:
** DATE : 04/12/2014 * TIME: 07:49:42 **
我只想捕获04/12/2014 07:49:42.
我试过这个.*DATE : ([0-9\/]+.*TIME: [0-9\:]+)
但我得到了这个:"04/12/2014 * TIME: 07:49:42."
如何删除" * TIME:"?
我在纯正则表达式中需要它,所以我在http://www.regexr.com/进行测试。
答案 0 :(得分:1)
[\* ]*Date\s*:\s*([0-9/]+)[ \*]*time\s*:\s*([0-9:]+)[ \*]*
在替换语句中你使用$1 $2
然后你会得到你想要的东西
答案 1 :(得分:0)
这应该可以解决问题:
/\*\* +DATE : ([\d|\/]+) +\* TIME: ([\d|:]+) +\*\*/
这将返回一个元组。因此,例如,使用JavaScript:
var s = "** DATE : 04/12/2014 * TIME: 07:49:42 **",
re = /\*\* +DATE : ([\d|\/]+) +\* TIME: ([\d|:]+) +\*\*/;
re.exec(s); // returns ["original string", "04/12/2014", "07:49:42"]
<强>击穿强>:
\*\* +DATE :
(请注意冒号后面的空格)最多匹配"DATE : "
([\d|\/]+)
匹配数字和斜杠,并将它们作为第一组捕获。
+\* TIME:
最多匹配"TIME: "
([\d|:]+)
通过匹配数字或冒号来捕获时间
+\*\*/
完成序列
答案 2 :(得分:0)
怎么样:
/DATE\s+:\s+([0-9/]+).+TIME\s+:\s+([0-9:]+)/