在notepad ++中查找并替换重新排序的日期格式

Chr*_*s J 23 regex replace date notepad++

我有一个有几千行的文件要添加到MySQL数据库中.行中的日期值采用dd-mm-yyyy格式,但我需要它们采用yyyy-mm-dd格式.

例如,'11-04-2010',需要成为'2010-04-11',每一行.

在notepad ++或其他文本编辑器中有一种简单的方法吗?

crn*_*nlx 36

您可以使用Textpad执行此操作:

找: ([0-9]+)-+([0-9]+)-+([0-9]+)

替换:\ 3-\\ 2-\1

  • 也适用于记事本++. (5认同)
  • 我认为你可以通过使用`([0-9] {4}) - +([0-9] {2}) - +([0-9] {2})`来更具体.那个`\ 3-\2-\1`对我来说是全新的,乐于助人.为此+1. (3认同)

Gui*_*amp 8

为了确保只重新排序错误的格式(如果你有合并数据库的混合格式),请使用:

([0-9]{2})-+([0-9]{2})-+([0-9]{4})
Run Code Online (Sandbox Code Playgroud)

这将搜索(四位数,短划线,两位数,短划线,两位数).

在像notepad ++这样的正则表达式编辑器中,将其替换为:

\3-\2-\1
Run Code Online (Sandbox Code Playgroud)

在像libre office这样的工具中,您需要将其替换为:

$3-$2-$1 
Run Code Online (Sandbox Code Playgroud)

编辑:我写了一篇关于此的博文,因为这似乎是一个常见的问题:http: //bytethinker.com/blog/correct-date-format-with-notepad-and-regex


小智 5

使用Notepad++将文本文件的几行中的mm/dd/yyyy更改为yyyy/mm/dd。脚本被保存为下一个文件的宏。

查找:([0-9]{2})/+([0-9]{2})/+([0-9]{4}) 替换:\3/\1/\2