我有
12.hello.mp3
21.true.mp3
35.good.mp3
.
.
.
依此类推,文件名列在文本文件中。
我只需要用空格替换数字前面的点(.)。(例如 12.hello.mp3 => 12 hello.mp3)。 如果我的正则表达式为“[0-9].”,它也会替换数字。 请帮助我。
更换
^(\d+)\.(.*mp3)$
与
\1 \2
此外,在最新版本的 notepad++ 中,它还接受以下内容,其他 IDE/编辑器也接受以下内容(例如 Intellij IDEA 等 JetBrains 产品):
$1 $2
这假设notepad++正则表达式匹配引擎支持组。正则表达式的基本含义是:将第一个点前面的数字匹配为组 1,将其后面的所有数字匹配为组 2(但前提是它以 mp3 结尾)
我用vscode测试过。您必须使用带括号的组
(group of regex)
1 a text
2 another text
3 yet more text
(\d)\s
$1-
1-a text
2-another text
3-yet more text
这里的答案对我来说没有多大意义,我花了一段时间才弄清楚。
假设我有这个字符串:
return this.logSomething('text');
我想把它变成这样:
this.logSomething('text'); return;
...那么这就是查找字段应包含的内容:
return (this.logSomething\('[a-zA-Z0-9]*'\);)
这就是替换字段应包含的内容:
$1 return;
这里的见解是查找字段中的附加括号。它们界定了您的组,然后您可以使用
$1
、$2
等进行引用。
使用基本模式,在此处接受的答案中详细描述了一个示例,将
class="odd"
和 class="even"
添加到 Notepad++或任何其他正则表达式兼容编辑器中的每个
<tr>
元素:
查找内容:
(<tr><td>)(.*?\r\n)(<tr><td>)(.*?\r\n)
替换为:
<tr class="odd"><td>\2<tr class="even"><td>\4