关于RegExReplace的正则命令弄了一天跪下了,请教各位大佬,描述的很详细. Topic is solved

遇到了问题?请先进行搜索(中文和英文),然后在此提问

Moderators: tmplinshi, arcticir

lifenots
Posts: 4
Joined: 17 Jan 2018, 08:43

关于RegExReplace的正则命令弄了一天跪下了,请教各位大佬,描述的很详细.

11 May 2023, 05:36

研究了半天憋出了一条 https://regexr-cn.com/ 测试过是匹配正常的,AHK又不对微调了半天,下面这条是我弄的.

Code: Select all

text := RegExReplace(Clipboard, "(?<=\/)[^\/\)]*(?=\))", "$0)`n#$0") ;比较成功的了
核心逻辑就是每行结尾那个文件名通过正则到前面去起个标题行
但是怎么也实现不了想要的效果,想问下各位大佬,其他正则软件匹配是正常的,但是AHK里就怎么都弄不对,真是头大,AHK的版本是1.1的.

A文本(原始在剪切板的文本:
![embed](http://cnin.cn:52355/Sound/Original Soundtrack/01 Where Are You-.wav)
![embed](http://cnin.cn:52355/测试/A.mp3)
![embed](http://cnin.cn:52356/测1/B.jpg)
![embed](http://cnin.cn:52360/试测C/C.mp4)
![embed](http://cnin.cn:52360/Sound/测V试/A.mp3)
![embed](http://cnin.cn:52360/123123/测试/B.mp4)

B文本(通过上面研究了半天输出的文本:
![embed](http://cnin.cn:52355/Sound/Original Soundtrack/01 Where Are You-.wav)
#01 Where Are You-.wav)
![embed](http://cnin.cn:52355/测试/A.mp3)
#A.mp3)
![embed](http://cnin.cn:52356/测1/B.jpg)
#B.jpg)
![embed](http://cnin.cn:52360/试测C/C.mp4)
#C.mp4)
![embed](http://cnin.cn:52360/Sound/测V试/A.mp3)
#A.mp3)
![embed](http://cnin.cn:52360/123123/测试/B.mp4)
#B.mp4)

C文本(希望达到的效果:
01 Where Are You-.wav
![embed](http://cnin.cn:52355/Sound/Original Soundtrack/01 Where Are You-.wav)
A.mp3
![embed](http://cnin.cn:52355/测试/A.mp3)
B.jpg
![embed](http://cnin.cn:52356/测1/B.jpg)
C.mp4
![embed](http://cnin.cn:52360/试测C/C.mp4)
A.mp3
![embed](http://cnin.cn:52360/Sound/测V试/A.mp3)
B.mp4
![embed](http://cnin.cn:52360/123123/测试/B.mp4)
WKen
Posts: 187
Joined: 21 Feb 2023, 00:01

Re: 关于RegExReplace的正则命令弄了一天跪下了,请教各位大佬,描述的很详细.  Topic is solved

11 May 2023, 07:21

看不懂,我只学了一点,用我简单的方式

Code: Select all

text := '
(
![embed](http://cnin.cn:52355/Sound/Original Soundtrack/01 Where Are You-.wav)
![embed](http://cnin.cn:52355/测试/A.mp3)
![embed](http://cnin.cn:52356/测1/B.jpg)
![embed](http://cnin.cn:52360/试测C/C.mp4)
![embed](http://cnin.cn:52360/Sound/测V试/A.mp3)
![embed](http://cnin.cn:52360/123123/测试/B.mp4)
)'

 msgbox RegExReplace(text, "(.*\/)([^\/]*)(\))", "$2`n$0")
lifenots
Posts: 4
Joined: 17 Jan 2018, 08:43

Re: 关于RegExReplace的正则命令弄了一天跪下了,请教各位大佬,描述的很详细.

11 May 2023, 10:46

@WKen
感谢大大,解决了我问题,我描述的已经解决了,但是还有个问题,就是嵌入需要把空格替换成%20,但是换行显示标题又不需要空格显示为%20,统一替换又会让嵌入格式失效,麻烦指教下,

A文本:修改前文本

Code: Select all

02%20Inertia.wav
![embed](http://cnws.cn:44530/Sound/Thomas%20Was%20Alone%20-%20Original%20Soundtrack/02%20Inertia.wav)
03%20Hope.wav
![embed](http://cnws.cn:44530/Sound/Thomas%20Was%20Alone%20-%20Original%20Soundtrack/03%20Hope.wav)
04%20United%20We%20Stand.wav
![embed](http://cnws.cn:44530/Sound/Thomas%20Was%20Alone%20-%20Original%20Soundtrack/04%20United%20We%20Stand.wav)
05%20Divided%20We%20Fall.wav
![embed](http://cnws.cn:44530/Sound/Thomas%20Was%20Alone%20-%20Original%20Soundtrack/05%20Divided%20We%20Fall.wav)
B文本:希望修改成文本

Code: Select all

02 Inertia.wav
![embed](http://cnws.cn:44530/Sound/Thomas%20Was%20Alone%20-%20Original%20Soundtrack/02%20Inertia.wav)
03 Hope.wav
![embed](http://cnws.cn:44530/Sound/Thomas%20Was%20Alone%20-%20Original%20Soundtrack/03%20Hope.wav)
04 United We Stand.wav
![embed](http://cnws.cn:44530/Sound/Thomas%20Was%20Alone%20-%20Original%20Soundtrack/04%20United%20We%20Stand.wav)
05 Divided We Fall.wav
![embed](http://cnws.cn:44530/Sound/Thomas%20Was%20Alone%20-%20Original%20Soundtrack/05%20Divided%20We%20Fall.wav)
feiyue
Posts: 351
Joined: 08 Aug 2014, 04:08

Re: 关于RegExReplace的正则命令弄了一天跪下了,请教各位大佬,描述的很详细.

11 May 2023, 21:59

你可以这样:

Code: Select all

s=
(%
02%20Inertia.wav
![embed](http://cnws.cn:44530/Sound/Thomas%20Was%20Alone%20-%20Original%20Soundtrack/02%20Inertia.wav)
)
Loop 
  s:=RegExReplace(s, "(^|\n)([^!\n]*)%20", "$1$2 ", n)
Until !n
msgbox % s
Guest

Re: 关于RegExReplace的正则命令弄了一天跪下了,请教各位大佬,描述的很详细.

12 May 2023, 03:56

feiyue wrote:
11 May 2023, 21:59
你可以这样:

Code: Select all

s=
(%
02%20Inertia.wav
![embed](http://cnws.cn:44530/Sound/Thomas%20Was%20Alone%20-%20Original%20Soundtrack/02%20Inertia.wav)
)
Loop 
  s:=RegExReplace(s, "(^|\n)([^!\n]*)%20", "$1$2 ", n)
Until !n
msgbox % s
非常感恩,解决了,谢谢

Return to “请求帮助”

Who is online

Users browsing this forum: No registered users and 4 guests