吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 764|回复: 9
收起左侧

[经验求助] 求个正则表达式

[复制链接]
小啊好帅啊 发表于 2024-3-19 13:48
40吾爱币
小说章节和章节名替换的正则表达式
就是统一替换吗,章节号和章节名保持原有不变,例如:正则查找: 第(.+)百(.+)十?(.+)章替换为:第\1\2\3章,这个章节号确实没问题,但是章节名统一替换后就变成统一的了,想要章节名自动的那个写法

最佳答案

查看完整内容

import re # 示例文本 text = "第123章 这是一个章节名\n第456百78章 这是另一个章节名" # 正则表达式 pattern = r"第([一二三四五六七八九十百千万亿]+([十百千万亿]+)?[一二三四五六七八九十]+)章\s+(.*)" # 替换函数,保持章节号和章节名不变 def replace_chapter_format(match): chapter_number = match.group(1) # 捕获的章节号 chapter_name = match.group(2) # 捕获的章节 ...

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

linkgui 发表于 2024-3-19 13:48
import re  
  
# 示例文本  
text = "第123章 这是一个章节名\n第456百78章 这是另一个章节名"  
  
# 正则表达式  
pattern = r"第([一二三四五六七八九十百千万亿]+([十百千万亿]+)?[一二三四五六七八九十]+)章\s+(.*)"  
  
# 替换函数,保持章节号和章节名不变  
def replace_chapter_format(match):  
    chapter_number = match.group(1)  # 捕获的章节号  
    chapter_name = match.group(2)    # 捕获的章节名  
    return f"第{chapter_number}章 {chapter_name}"  # 返回替换后的章节标题  
  
# 使用正则表达式进行替换  
new_text = re.sub(pattern, replace_chapter_format, text)  
  
print(new_text)
 楼主| 小啊好帅啊 发表于 2024-3-19 13:53
linkgui 发表于 2024-3-19 13:52
import re  
  
# 示例文本  

大哥,看不懂,我意见用的就几个代码来着,但是忘了,我想知道章节和章节名用什么数字或者符号代替
 楼主| 小啊好帅啊 发表于 2024-3-19 13:54
linkgui 发表于 2024-3-19 13:52
import re  
  
# 示例文本  

您可能没理解我的意思,我意思是第一章 哈哈哈,第二章 哗哗哗,我用正则表达式替换后哈哈哈和哗哗哗不变
VnYzm 发表于 2024-3-19 13:59
小啊好帅啊 发表于 2024-3-19 13:54
您可能没理解我的意思,我意思是第一章 哈哈哈,第二章 哗哗哗,我用正则表达式替换后哈哈哈和哗哗哗不变

看这个“哈哈哈”和”哗哗哗“后面有没有空格或者换行符,有的话就用\S+这种匹配就好了
 楼主| 小啊好帅啊 发表于 2024-3-19 14:01
VnYzm 发表于 2024-3-19 13:59
看这个“哈哈哈”和”哗哗哗“后面有没有空格或者换行符,有的话就用\S+这种匹配就好了

这就是章节名,小说每章的名字都不一样,我想让所有的章节统一CSS,但是章节名还保持原来不变
VnYzm 发表于 2024-3-19 14:09
小啊好帅啊 发表于 2024-3-19 14:01
这就是章节名,小说每章的名字都不一样,我想让所有的章节统一CSS,但是章节名还保持原来不变

这样行吗:第(.+)百(.+)十?(.+)章(\s+\S+)替换为:第\1\2\3章\4,相当于把章节名也匹配了贴在后面
 楼主| 小啊好帅啊 发表于 2024-3-19 14:13
VnYzm 发表于 2024-3-19 14:09
这样行吗:第(.+)百(.+)十?(.+)章(\s+\S+)替换为:第\1\2\3章\4,相当于把章节名也匹配了贴在后面

我试试,大哥
 楼主| 小啊好帅啊 发表于 2024-3-19 14:14
VnYzm 发表于 2024-3-19 14:09
这样行吗:第(.+)百(.+)十?(.+)章(\s+\S+)替换为:第\1\2\3章\4,相当于把章节名也匹配了贴在后面

这个搜不到呀、
 楼主| 小啊好帅啊 发表于 2024-3-19 14:15
VnYzm 发表于 2024-3-19 14:09
这样行吗:第(.+)百(.+)十?(.+)章(\s+\S+)替换为:第\1\2\3章\4,相当于把章节名也匹配了贴在后面

您就告诉我章节有什么代替 章节后的章节名有什么代替
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-12 17:39

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表