Project1

标题: 请教个正则表达式写法 [打印本页]

作者: 灯笼菜刀王    时间: 3 天前
标题: 请教个正则表达式写法
有字符串格式 "XXXXXB啊啊_XXXXX"

我想要匹配 B后面, _前面的字符(红色啊啊), 字符数量不定, 只会是汉字

此外, 目标字符后面会有三种情况
1,直接结束的情况------------"XXXXB啊啊啊"
2,后面带有_+字符串--------"XXXXXB啊啊啊_XXXXX"
3,后面带有※+字符串-------"XXXXB啊啊啊啊※XXXXX"

请问, 如何用一个表达式, 能同时匹配以上三种情况中 啊啊啊 这部分的字符呢?

尝试过失败的解法

=~ /B(\w+)[※_]*/       #这样写会把 B后面所有字符全部匹配出来

=~ /B(\w+?)[※_]*/       #这样写只会匹配B后面第一个字

=~ /B(\w+)[※_]/       #这样写, 直接结束的情况下无法匹配

=~ /B(\w+)[※_\$]/  
=~ /B(\w+)[※_$]/
=~ /B(\w+)[$※_]/     #这样写都不能成功匹配第一种情况

作者: alexncf125    时间: 3 天前
/B(\W+)(?:$|_|※)/
汉字是大写W吧,小写w是数字字母
作者: 落无伤    时间: 3 天前
直接问ai,稳的一批
作者: alexncf125    时间: 3 天前
alexncf125 发表于 2025-8-9 12:36
/B(\W+)(?:$|_|※)/
汉字是大写W吧,小写w是数字字母


会把 B后面的全部匹配出来? 没有吧?

作者: 灯笼菜刀王    时间: 3 天前
alexncf125 发表于 2025-8-9 15:48
会把 B后面的全部匹配出来? 没有吧?


XP这个老古板就会
作者: 风吹处阴凉    时间: 3 天前
ChatGPT,请
作者: fux2    时间: 3 天前
RUBY 代码复制
  1. a = "XXXXXB啊啊_sadfsdf"
  2. a[/B([^_※]+)/]
  3. p $1



作者: 千寒-YuukakeID    时间: 3 天前
B([\u4e00-\u9fa5]+)
\u4e00-\u9fa5指的是绝大多数简体繁体中文




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1