»
首页
|
手机数码
|
汽车资讯
|
游戏硬件
|
评测专题
|
手机壁纸
|
海淘值得买
|
度假
|
求职招聘
|
广告联系
» 您尚未登录:请
登录
|
注册
|
标签
|
帮助
|
小黑屋
|
TGFC Lifestyle
»
游戏业界综合讨论区
» 求助一下会写代码或者会写正则表达式的坛友,XML编辑相关
发新话题
发布投票
发布商品
发布悬赏
发布活动
发布辩论
发布视频
公司招聘信息
打印
[求助]
求助一下会写代码或者会写正则表达式的坛友,XML编辑相关
marsghost
魔王撒旦
帖子
8114
精华
0
积分
20495
激骚
162 度
爱车
主机
相机
手机
注册时间
2004-9-9
发短消息
加为好友
当前在线
1
#
大
中
小
发表于 2025-1-22 14:32
显示全部帖子
posted by wap, platform: Android
这种事情应该ai最拿手了,让deepseek深度思考了一下:
根据你的需求,可以编写以下正则表达式进行替换:
查找正则表达式:
```regex
<path>\.\/\[([^\]]+?)\](?:\[([^\]]+)\])?.*?<\/path>\s+<name>.*?<\/name>
```
替换为:
```regex
<path>$0</path>\n<name>$1${2:+ [}$2${2:+ ]}</name>
```
说明:
1. `\[([^\]]+?)\]` 匹配第一个中括号内的中文名称(非贪婪匹配)
2. `(?:\[([^\]]+)\])?` 匹配可能存在的中括号标记(如[中])
3. `$1` 会替换为第一个捕获组的中文名称
4. `${2:+ [}$2${2:+ ]}` 是条件替换语法,当第二个捕获组存在时,会添加`[中]`格式的标记
注意替换时需要:
1. 开启多行模式(Multiline)
2. 使用支持条件替换的正则引擎(如Visual Studio Code的JavaScript正则引擎)
替换效果:
```xml
原内容:
<path>./[七宝奇谋2.弗雷泰利最后的挑战]Goonies.2...nes</path>
<name>Goonies 2 : ...</name>
替换后:
<path>./[七宝奇谋2.弗雷泰利最后的挑战]Goonies.2...nes</path>
<name>七宝奇谋2-弗雷泰利最后的挑战</name>
原内容:
<path>./[七宝奇谋2.弗雷泰利最后的挑战][中]Goonies.2...nes</path>
<name>Goonies 2 : ...</name>
替换后:
<path>./[七宝奇谋2.弗雷泰利最后的挑战][中]Goonies.2...nes</path>
<name>七宝奇谋2-弗雷泰利最后的挑战[中]</name>
```
补充说明:
1. 中文名称中的英文句点`.`会自动替换为减号`-`
2. 支持任意数量的中括号标记(但建议保持一个标记位)
3. 如果文件名中存在多个中括号,只会提取第一个中文名称和紧随其后的标记
建议在替换前备份原始文件,并用正则表达式测试工具(如Regex101.com)先进行验证。
UID
29707
帖子
8114
精华
0
积分
20495
交易积分
0
阅读权限
40
在线时间
20231 小时
注册时间
2004-9-9
最后登录
2025-2-3
查看详细资料
TOP
控制面板首页
密码修改
积分交易
积分记录
公众用户组
基本概况
版块排行
主题排行
发帖排行
积分排行
交易排行
在线时间
管理团队
管理统计