kc 发布的文章

在掌握了XLOOKUP的基础用法后,这里有一些高级技巧,涵盖多条件查找、二维交叉查询、通配符匹配、错误处理、动态数组溢出等进阶场景。

一、多条件查找(多条件联合查询)

当需要根据多个条件(如同时满足“部门”和“职位”)来查找一个值时,XLOOKUP可以通过连接符将多个条件合并为一个查找值,实现精准匹配 。
核心原理:将查找值与查找列都通过 & 连接成一个组合键,再进行比较。

示例:根据“产品类别”与“销售额度”查找对应的折扣率 。

=XLOOKUP(B2&C2, DiscountTable!A:A&DiscountTable!B:B, DiscountTable!C:C, 0)

说明:
B2&C2:将“产品类别”和“销售额度”合并为一个查找键。
DiscountTable!A:A&DiscountTable!B:B:将查找范围中的类别列和销售额度列也合并为组合键。
这种写法支持任意数量的条件,只需将更多列用 & 连接即可 。

二、二维交叉查询(双方向查找)

二维交叉查询用于查找行与列交汇处的值,例如根据“产品名称”和“月份”找到对应的销售额。XLOOKUP通过嵌套方式实现这一功能 。

示例:查找某产品在特定月份的销售数据。

=XLOOKUP(H2, B4:B20, XLOOKUP(H3, C3:N3, C4:N20))

工作原理:
内层 XLOOKUP:在月份标题行 C3:N3 中查找 H3(目标月份),返回对应的整列数据(C4:N20 中该月份所在列)。
外层 XLOOKUP:在产品列 B4:B20 中查找 H2(目标产品),然后从内层返回的月份列中提取对应值。
优势:相比传统的 INDEX+MATCH 组合,XLOOKUP嵌套的写法更直观,易于阅读和维护 。

三、通配符匹配(模糊查找)

当需要查找包含特定字符或以特定字符开头/结尾的文本时,XLOOKUP支持通配符匹配,需将 match_mode 参数设置为 2 。
通配符规则:

*:匹配任意数量的字符。
?:匹配单个字符。
~:将通配符转义为普通字符(如查找文本中的 * 本身)。
示例:查找所有以“Lap”开头的产品价格。

=XLOOKUP("Lap*", A2:A50, B2:B50, "未找到", 2)

注意:match_mode 默认值为 0(精确匹配),此时 * 和 ? 会被当作普通字符处理。务必设置 match_mode = 2,否则通配符不会生效,这是最常见的错误之一 。

四、近似匹配与区间查找

XLOOKUP的 match_mode 参数支持近似匹配,可用于处理阶梯定价、税率区间、佣金比例等场景 。

-|-|-
match_mode值 | 匹配行为 | 适用场景
-1|精确匹配,若无匹配则返回下一个较小的值|阶梯折扣、税率区间
1|精确匹配,若无匹配则返回下一个较大的值|成绩评级、达标判定
示例:根据销售数量查找对应的折扣率。

=XLOOKUP(45, A9:A12, B9:B12, "无折扣", -1)

说明:当销售数量为45时,查找表中有0、10、50、100四个档位。-1 模式会返回小于等于45的最大档位(即10)对应的折扣率(5%)。

五、逆向查找与最后一次匹配

  1. 逆向查找(向左查找)
    XLOOKUP支持任意方向的查找,不受VLOOKUP只能向右查找的限制 。

示例:根据“客户ID”(在D列)查找“客户名称”(在A列)。

=XLOOKUP(F2, D2:D300, A2:A300)
  1. 查找最后一次匹配
    search_mode 参数设置为 -1,可以从底部向上搜索,返回最后一个匹配项 。

示例:查找某产品的最新价格更新记录。

=XLOOKUP("P001", B15:B18, C15:C18, , , -1)

适用场景:订单记录、价格变更历史、日志等需要获取最新数据的场景 。

六、错误处理与容错机制

  1. 内置 if_not_found 参数
    XLOOKUP 的第四个参数 if_not_found 可以直接定义查找失败时的返回值,无需再嵌套 IFERROR 或 IFNA 。

    =XLOOKUP(A2, B2:B100, C2:C100, "未找到")
  2. 返回空值而非错误
    若希望查找失败时返回空单元格而非错误提示,可将 if_not_found 设为 "" 。

    =XLOOKUP(A2, products[SKU], products[Price], "")

    优势:内置的 if_not_found 参数比外层包裹 IFERROR 更简洁、运算效率更高,也更符合公式逻辑 。

七、返回多列数据

XLOOKUP 的 return_array 参数可以指定多列范围,从而一次性返回多个字段 。

示例:根据员工ID一次性返回其部门、经理和入职日期。

=XLOOKUP(A2, employees[ID], employees[Department:Start Date])

说明:employees[Department:Start Date] 表示从“部门”列到“入职日期”列的多列范围。当查找匹配时,XLOOKUP会返回对应行的所有列数据,并自动溢出到相邻单元格 。

八、结合其他函数的高级应用

XLOOKUP 可以与其他函数嵌套,构建更强大的数据分析公式 。

  1. 与 SUM 结合:条件求和
    =SUM(XLOOKUP("产品类别", CategoriesRange, SalesRange))
  2. 与 ADDRESS 结合:返回单元格地址
    =ADDRESS(ROW(XLOOKUP(A2, B2:B100, B2:B100)), COLUMN(XLOOKUP(A2, B2:B100, B2:B100)))
  3. 与 CHOOSE 结合:返回非连续列
    =XLOOKUP(A2, B2:B100, CHOOSE({1,2,3}, C2:C100, E2:E100, G2:G100))
    说明:CHOOSE 函数将 C、E、G 三列(非连续)组合成一个虚拟数组,供 XLOOKUP 返回 。

九、常见错误及排查方法

-|-|-
错误类型|错误值|常见原因及解决方法
未找到匹配|#N/A|查找值不存在,或未设置 if_not_found 参数;检查拼写、空格、数据类型一致性
范围不匹配|#VALUE!|lookup_array 与 return_array 的行数或列数不一致,导致无法对齐
版本不支持|#NAME?|当前Excel版本低于2019/Office 365,不支持XLOOKUP函数
通配符无效|#N/A|未设置 match_mode = 2,* 被当作普通字符处理
精确匹配误判|错误结果|默认 match_mode = 0 为精确匹配;若需近似匹配,须显式设置 match_mode 为 -1 或 1

十、总结:XLOOKUP进阶技巧速查表

-|-|-
技巧|核心参数|一句话记忆
多条件查找|= 连接符 + &|用 & 合并条件,实现多条件联合查询
二维交叉查询|嵌套 XLOOKUP|内层查列,外层查行,返回交叉点值
通配符匹配|match_mode = 2|匹配模式设为2,开启 * 和 ? 模糊查找
近似匹配|match_mode = -1 或 1|处理阶梯区间,返回小于或大于的匹配值
逆向查找|直接指定返回列|向左向右皆可,摆脱VLOOKUP的方向限制
最后匹配|search_mode = -1|从底部向上搜索,返回最新记录
内置容错|if_not_found|第四参数自定义错误提示,无需 IFERROR
多列返回|扩展返回数组|返回多列,自动溢出到相邻单元格

一、为什么你需要XLOOKUP?

在Excel中,查找数据是日常工作中最频繁的操作之一。过去,我们依赖VLOOKUP或HLOOKUP,但它们有诸多限制:

  • VLOOKUP:查找列必须在数据表的第一列,且只能向右查找。
  • HLOOKUP:查找行必须在数据表的第一行,且只能向下查找。
  • 两者都不支持反向查找,且处理错误值(如#N/A)时不够灵活。

XLOOKUP(在Excel 2021及Office 365中引入)彻底解决了这些问题,被誉为“查找函数的终极形态”。

二、XLOOKUP的基本语法

=XLOOKUP(查找值, 查找数组, 返回数组, [未找到时的返回值], [匹配模式], [搜索模式])

-|-|-
参数|说明|是否必填
查找值|你要查找的内容|是
查找数组|在哪一列/行中查找|是
返回数组|返回哪一列/行的结果|是
未找到时的返回值|可选,匹配失败时返回自定义文本|否
匹配模式|0=精确匹配(默认),-1=小于,1=大于,2=通配符|否
搜索模式|1=从第一个开始搜索(默认),-1=从最后一个搜索,2=二分查找|否

三、XLOOKUP vs VLOOKUP:核心优势对比

-|-|-
功能|VLOOKUP|XLOOKUP
查找方向|只能向右|任意方向(左、右、上、下)
查找列位置|必须位于第一列|任意位置
返回列指定|整数(第几列)|直接指定返回数组
错误处理|需嵌套IFERROR|内置“未找到”参数
多条件查找|需辅助列|可直接用数组公式
通配符支持|支持|支持(匹配模式=2)

四、XLOOKUP的常见应用场景

场景1:经典单条件查找(替代VLOOKUP)
问题:根据员工ID查找姓名。

VLOOKUP写法:

=VLOOKUP(A2, A:D, 2, 0)

XLOOKUP写法:

=XLOOKUP(A2, A:A, B:B)

优势:无需计算列序号,直接指定返回列。

场景2:反向查找(VLOOKUP做不到)
问题:根据员工姓名查找员工ID(姓名在ID右侧)。

VLOOKUP:需要借助INDEX+MATCH组合。

XLOOKUP写法:

=XLOOKUP(B2, B:B, A:A)

优势:直接向左查找,公式更简洁。

场景3:多条件查找
问题:根据“部门”和“职位”两个条件查找“薪资”。

=XLOOKUP(1, (A:A=E2)*(B:B=F2), C:C)

说明:(A:A=E2)*(B:B=F2) 会生成一个由0和1组成的数组,只有两个条件同时满足时为1,XLOOKUP精确匹配1,返回对应的薪资。

场景4:处理查找失败的情况
问题:查找某个不存在的ID时,返回自定义提示而非错误值。

=XLOOKUP(A2, A:A, B:B, "未找到此人")

优势:无需嵌套IFERROR,公式更清爽。

场景5:从右向左查找最后一个匹配项
问题:查找某员工最后一次加班记录。

=XLOOKUP(A2, A:A, B:B, "无记录", 0, -1)

说明:第六个参数 -1 表示从数组的最后一个值开始搜索,返回最后一个匹配项,常用于“最后一次”场景。

五、XLOOKUP的局限与注意事项

-|-
局限|说明
两个数组|公式中两个数组需要保持相同大小,例如:A:A对应B:B即A列对B列;A1:A10,B11:B20,不需要都是1开始,但必需保持数组中元素个数相同。
wps office|ET 11.2及以上版本
ms office|Excel 2021及以上版本、Office 365支持
性能问题|在大数据量(>10万行)中,速度可能慢于INDEX+MATCH
精确匹配默认|不指定匹配模式时,默认为0(精确匹配),注意区分
数组公式依赖|多条件查找依赖动态数组,旧版本可能不支持

六、总结:什么时候用XLOOKUP?

-|-
场景|推荐函数
需要反向查找(向左查找)|XLOOKUP
需要多条件查找|XLOOKUP 或 INDEX+MATCH
需要处理#N/A错误|XLOOKUP
需要从右到左查找最后一项|XLOOKUP
数据量极大(>10万行)|INDEX+MATCH(性能更优)
老版本Excel(2019及以前)|INDEX+MATCH

七、一句话记忆

XLOOKUP = VLOOKUP的升级版 + HLOOKUP + INDEX+MATCH的简化版,且支持反向查找、错误处理和灵活搜索方向。

近期看大宝的作业其中有讲如何快速判断一个大数能否被整除,这里整理一下备查。

定理

a*b除以c的余数等于a除以c的余数*b除以c的余数
a*b mod c = (a mod c) * (b mod c) mod 表示取余。

原理

设:

a = k1*c + x
b = k2*c + y

则:

a*b 
= (k1*c+x)*(k2*c+y)
= k1*k2*c*c + (k1*y+k2*x)*c + x*y
= [k1*k2*c + (k1*y+k2*x)]*c + x*y

明显 [k1*k2*c + (k1*y+k2*x)]*c包含因数c,取余时可直接舍去。
故:

a*b mod c = x*y mod c

2

这个简单直接看末位能否被2整除。

3

所有数位上的数字相加能被3整除。
原理:abc = a*(3*33+1) + b*(3*3+1) +c =3*33*a + 3*3*b + a + b + c
明显3*33*a + 3*3*b能被3整除,故只用考虑 a + b + c能被3整除。

4

最后两位能被4整除。还有简便计算:ab(一个两位数),a*2 + b能被4整除。
原理:abc = a*(4*25) + b*(4*2+2) +c =4*25*a + 4*2*b + 2*b + c
明显4*25*a + 4*2*b能被4整除,故只用考虑 2*b + c能被3整除。

5

末位为05

6

同时被23整除。

7

以三位分节,然后奇减偶,结果能被7整除。还有简便计算abc(一个三位数),a*2 + b*3 + c能被7整除。

原理

1、 10 、 100、1000、10000、100000……除7的余数分别为1、3、2、6、4、5、1、3、2、6、4、5……
1 3 2 6 4 5的循环
同时6 4 5又可以写为-1 -3 -2因此可以改写为1 3 2 -1 -3 -2 1 3 2 -1 -3 -2……
即从个位起以三位分节。余数按1 3 2循环,奇数节为正,偶数节为负。
例:123456789123456
先分节:
大数|123 | 456 | 789 | 123 | 456
:-:|:-:|:-:|:-:|:-:|:-:
分节|5 | 4 | 3 | 2 | 1
所有奇数节为 1 3 5 对应 456 789 123
所有偶数节为 2 4 对应 123 456
奇减偶:(456 + 789 + 123) - (123 + 456) = 789
再运用简便计算:7*2 + 8*3 + 9 = 47 => 47/7=6 ··· 5123456789123456除以75
注:如各节加和为负则对应余数加7转换为正数

8

末三位能被8整除。简便计算abc(一个三位数),a*4 + b*2 + c 能被8整除。

原理

dabc = d*8*125 + a*(8*12+4) + b*(8+2) +c = d*8*125 + a*8*12 + b*8 + a*4 + b*2 +c
即余数等同于 a*4+b*2+c

进阶推广

任意大数除以2的n次方时,余数只需要考虑末n位
记最后n位为X(1)X(2)……X(n)
则结果为X(1)*2^(n-1) + X(2)*2^(n-2) + …… + X(n)*2^(n-n)

9

所有数位上的数字相加能被9整除。

原理

abc = a*(9*11+1) + b*(9*1+1)+c = a*9*11 + b*9*1 + a + b + c
即余数等同于 a + b + c

之前看到有个开放的项目MKPlayer,觉得蛮有意思就搞了个。
由于经常切换设备,有了同步歌单的需求。
然后发现他的设计思路是直接调取网易的歌单,或者是手工修改歌单,每次添加或删除歌曲比较麻烦。
于是就给他修改了一下。

  1. 添加了“喜欢的歌”歌单
  2. 添加爱心按钮,点击喜欢,就会前歌曲添加到喜欢歌单中,再次点击就移除
  3. 添加歌单同步按钮,可以同步到云端或从云端同步到本地
  4. 添加用户id,以识别不同的用户
  5. 修改API接口为网易云开放接口
  6. 版权因素,音乐播放逻辑与网易保持同步:版权音乐仅提供试听。

来试试吧:music.ab.cd

《声律启蒙》下卷

一先

晴对雨,地对天,天地对山川。
山川对草木,赤壁对青田。
郏鄏鼎,武城弦,木笔对苔钱。
金城三月柳,玉井九秋莲。
何处春朝风景好,谁家秋夜月华圆。
珠缀花梢,千点蔷薇香露;练横树杪,几丝杨柳残烟。

前对后,后对先,众丑对孤妍。
莺簧对蝶板,虎穴对龙渊。
击石磬,观韦编,鼠目对鸢肩。
春园花柳地,秋沼芰荷天。
白羽频挥闲客坐,乌纱半坠醉翁眠。
野店几家,羊角风摇沽酒旆;长川一带,鸭头波泛卖鱼船。

离对坎,震对乾,一日对千年。
尧天对舜日,蜀水对秦川。
苏武节,郑虔毡,涧壑对林泉。
挥戈能退日,持管莫窥天。
寒食芳辰花烂熳,中秋佳节月婵娟。
梦里荣华,飘忽枕中之客;壶中日月,安闲市上之仙。

二萧

恭对慢,吝对骄,水远对山遥。
松轩对竹槛,雪赋对风谣。
乘五马,贯双雕,烛灭对香消。
明蟾常彻夜,骤雨不终朝。
楼阁天凉风飒飒,关河地隔雨潇潇。
几点鹭鸶,日暮常飞红蓼岸;一双鸂鶒,春朝频泛绿杨桥。

开对落,暗对昭,赵瑟对虞韶。
轺车对驿骑,锦绣对琼瑶。
羞攘臂,懒折腰,范甑对颜瓢。
寒天鸳帐酒,夜月凤台箫。
舞女腰肢杨柳软,佳人颜貌海棠娇。
豪客寻春,南陌草青香阵阵;闲人避暑,东堂蕉绿影摇摇。

班对马,董对晁,夏昼对春宵。
雷声对电影,麦穗对禾苗。
八千路,廿四桥,总角对垂髫。
露桃匀嫩脸,风柳舞纤腰。
贾谊赋成伤鵩鸟,周公诗就托鸱鸮。
幽寺寻僧,逸兴岂知俄尔尽;长亭送客,离魂不觉黯然消。

三肴

风对雅,象对爻,巨蟒对长蛟。
天文对地理,蟋蟀对螵蛸。
龙夭矫,虎咆哮,北学对东胶。
筑台须垒土,成屋必诛茅。
潘岳不忘秋兴赋,边韶常被昼眠嘲。
抚养群黎,已见国家隆治;滋生万物,方知天地泰交。

蛇对虺,蜃对蛟,麟薮对鹊巢。
风声对月色,麦穗对桑苞。
何妥难,子云嘲,楚甸对商郊。
五音惟耳听,万虑在心包。
葛被汤征因仇饷,楚遭齐伐责包茅。
高矣若天,洵是圣人大道;淡而如水,实为君子神交。

牛对马,犬对猫,旨酒对嘉肴。
桃红对柳绿,竹叶对松梢。
藜杖叟,布衣樵,北野对东郊。
白驹形皎皎,黄鸟语交交。
花圃春残无客到,柴门夜永有僧敲。
墙畔佳人,飘扬竞把秋千舞;楼前公子,笑语争将蹴踘抛。

四豪

琴对瑟,剑对刀,地迥对天高。
峨冠对博带,紫绶对绯袍。
煎异茗,酌香醪,虎兕对猿猱。
武夫攻骑射,野妇务蚕缫。
秋雨一川淇澳竹,春风两岸武陵桃。
螺髻青浓,楼外晚山千仞;鸭头绿腻,溪中春水半篙。

刑对赏,贬对褒,破斧对征袍。
梧桐对橘柚,枳棘对蓬蒿。
雷焕剑,吕虔刀,橄榄对葡萄。
一椽书舍小,百尺酒楼高。
李白能诗时秉笔,刘伶爱酒每馎糟。
礼别尊卑,拱北众星常灿灿;势分高下,朝东万水自滔滔。

瓜对果,李对桃,犬子对羊羔。
春分对夏至,谷水对山涛。
双凤翼,九牛毛,主逸对臣劳。
水流无限阔,山耸有余高。
雨打村童新牧笠,尘生边将旧征袍。
俊士居官,荣引鹓鸿之序;忠臣报国,誓殚犬马之劳。

五歌

山对水,海对河,雪竹对烟萝。
新欢对旧恨,痛饮对高歌。
琴再抚,剑重磨,媚柳对枯荷。
荷盘从雨洗,柳线任风搓。
饮酒岂知欹醉帽,观棋不觉烂樵柯。
山寺清幽,直踞千寻云岭;江楼宏敞,遥临万顷烟波。

繁对简,少对多,里咏对途歌。
宦情对旅况,银鹿对铜驼。
刺史鸭,将军鹅,玉律对金科。
古堤垂亸柳,曲沼长新荷。
命驾吕因思叔夜,引车蔺为避廉颇。
千尺水帘,今古无人能手卷;一轮月镜,乾坤何匠用功磨。

霜对露,浪对波,径菊对池荷。
酒阑对歌罢,日暖对风和。
梁父咏,楚狂歌,放鹤对观鹅。
史才推永叔,刀笔仰萧何。
种橘犹嫌千树少,寄梅谁信一枝多。
林下风生,黄发村童推牧笠;江头日出,皓眉溪叟晒渔蓑。

六麻

松对柏,缕对麻,蚁阵对蜂衙。
頳鳞对白鹭,冻雀对昏鸦。
白堕酒,碧沉茶,品笛对吹笳。
秋凉梧堕叶,春暖杏开花。
雨长苔痕侵壁砌,月移梅影上窗纱。
飒飒秋风,度城头之筚篥;迟迟晚照,动江上之琵琶。

优对劣,凸对凹,翠竹对黄花。
松杉对杞梓,菽麦对桑麻。
山不断,水无涯,煮酒对烹茶。
鱼游池面水,鹭立岸头沙。
百亩风翻陶令秫,一畦雨熟邵平瓜。
闲捧竹根,饮李白一壶之酒;偶擎桐叶,啜卢仝七碗之茶。

吴对楚,蜀对巴,落日对流霞。
酒钱对诗债,柏叶对松花。
驰驿骑,泛仙槎,碧玉对丹砂。
设桥偏送笋,开道竟还瓜。
楚国大夫沉汨水,洛阳才子谪长沙。
书箧琴囊,乃士流活计;药炉茶鼎,实闲客生涯。

七阳

高对下,短对长,柳影对花香。
词人对赋客,五帝对三王。
深院落,小池塘,晚眺对晨妆。
绛霄唐帝殿,绿野晋公堂。
寒集谢庄衣上雪,秋添潘岳鬓边霜。
人浴兰汤,事不忘于端午;客斟菊酒,兴常记于重阳。

尧对舜,禹对汤,晋宋对隋唐。
奇花对异卉,夏日对秋霜。
八叉手,九回肠,地久对天长。
一堤杨柳绿,三径菊花黄。
闻鼓塞兵方战斗,听钟宫女正梳妆。
春饮方归,纱帽半淹邻舍酒;早朝初退,衮衣微惹御炉香。

荀对孟,老对庄,亸柳对垂杨。
仙宫对梵宇,小阁对长廊。
风月窟,水云乡,蟋蟀对螳螂。
暖烟香霭霭,寒烛影煌煌。
伍子欲酬渔父剑,韩生尝窃贾公香。
三月韶光,常忆花明柳媚;一年好景,难忘橘绿橙黄。

八庚

深对浅,重对轻,有影对无声。
蜂腰对蝶翅,宿醉对余酲。
天北缺,日东生,独卧对同行。
寒冰三尺厚,秋月十分明。
万卷书容闲客览,一樽酒待故人倾。
心侈唐玄,厌看霓裳之曲;意骄陈主,饱闻玉树之赓。

虚对实,送对迎,后甲对先庚。鼓琴对舍瑟,搏虎对骑鲸。
金匼匝,玉瑽琤,玉宇对金茎。
花间双粉蝶,柳内几黄莺。
贫里每甘藜藿味,醉中厌听管弦声。
肠断秋闺,凉吹已侵重被冷;梦惊晓枕,残蟾犹照半窗明。

渔对猎,钓对耕,玉振对金声。
雉城对雁塞,柳袅对葵倾。
吹玉笛,弄银笙,阮杖对桓筝。
墨呼松处士,纸号楮先生。
露浥好花潘岳县,风搓细柳亚夫营。
抚动琴弦,遽觉座中风雨至;哦成诗句,应知窗外鬼神惊。

九青

红对紫,白对青,渔火对禅灯。
唐诗对汉史,释典对仙经。
龟曳尾,鹤梳翎,月榭对风亭。
一轮秋夜月,几点晓天星。
晋士只知山简醉,楚人谁识屈原醒。
绣倦佳人,慵把鸳鸯文作枕;吮毫画者,思将孔雀写为屏。

行对坐,醉对醒,佩紫对纡青。
棋枰对笔架,雨雪对雷霆。
狂蛱蝶,小蜻蜓,水岸对沙汀。
天台孙绰赋,剑阁孟阳铭。
传信子卿千里雁,照书车胤一囊萤。
冉冉白云,夜半高遮千里月;澄澄碧水,宵中寒映一天星。

书对史,传对经,鹦鹉对鹡鸰。
黄茅对白荻,绿草对青萍。
风绕铎,雨淋铃,水阁对山亭。
渚莲千朵白,岸柳两行青。
汉代宫中生秀柞,尧时阶畔长祥蓂。
一枰决胜,棋子分黑白;半幅通灵,画色间丹青。

十蒸

新对旧,降对升,白犬对苍鹰。
葛巾对藜杖,涧水对池冰。
张兔网,挂鱼罾,燕雀对鹍鹏。
炉中煎药火,窗下读书灯。
织锦逐梭成舞凤,画屏误笔作飞蝇。
宴客刘公,座上满斟三雅爵;迎仙汉帝,宫中高插九光灯。

儒对士,佛对僧,面友对心朋。
春残对夏老,夜寝对晨兴。
千里马,九霄鹏,霞蔚对云蒸。
寒堆阴岭雪,春泮水池冰。
亚父愤生撞玉斗,周公誓死作金縢。
将军元晖,莫怪人讥为饿虎;侍中卢昶,难逃世号作饥鹰。

规对矩,墨对绳,独步对同登。
吟哦对讽咏,访友对寻僧。
风绕屋,水襄陵,紫鹄对苍鹰。
鸟寒惊夜月,鱼暖上春冰。
扬子口中飞白凤,何郎鼻上集青蝇。
巨鲤跃池,翻几重之密藻;颠猿饮涧,挂百尺之垂藤。

十一尤

荣对辱,喜对忧,夜宴对春游。
燕关对楚水,蜀犬对吴牛。
茶敌睡,酒消愁,青眼对白头。
马迁修史记,孔子作春秋。
适兴子猷常泛棹,思归王粲强登楼。
窗下佳人,妆罢重将金插鬓;筵前舞妓,曲终还要锦缠头。

唇对齿,角对头,策马对骑牛。
毫尖对笔底,绮阁对雕楼。
杨柳岸,荻芦洲,语燕对啼鸠。
客乘金络马,人泛木兰舟。
绿野耕夫春举耜,碧池渔父晚垂钩。
波浪千层,喜见蛟龙得水;云霄万里,惊看雕鹗横秋。

庵对寺,殿对楼,酒艇对渔舟。
金龙对彩凤,豮豕对童牛。
王郎帽,苏子裘,四季对三秋。
峰峦扶地秀,江汉接天流。
一湾绿水渔村小,万里青山佛寺幽。
龙马呈河,羲皇阐微而画卦;神龟出洛,禹王取法以陈畴。

十二侵

眉对目,口对心,锦瑟对瑶琴。
晓耕对寒钓,晚笛对秋砧。
松郁郁,竹森森,闵损对曾参。
秦王亲击缶,虞帝自挥琴。
三献卞和尝泣玉,四知杨震固辞金。
寂寂秋朝,庭叶因霜摧嫩色;沉沉春夜,砌花随月转清阴。

前对后,古对今,野兽对山禽。
犍牛对牝马,水浅对山深。
曾点瑟,戴逵琴,璞玉对浑金。
艳红花弄色,浓绿柳敷阴。
不雨汤王方剪爪,有风楚子正披襟。
书生惜壮岁韶华,寸阴尺璧;游子爱良宵光景,一刻千金。

丝对竹,剑对琴,素志对丹心。
千愁对一醉,虎啸对龙吟。
子罕玉,不疑金,往古对来今。
天寒邹吹律,岁旱傅为霖。
渠说子规为帝魄,侬知孔雀是家禽。
屈子沉江,处处舟中争系粽;
牛郎渡渚,家家台上竞穿针。

十三覃

千对百,两对三,地北对天南。
佛堂对仙洞,道院对禅庵。
山泼黛,水浮蓝,雪岭对云潭。
凤飞方翙翙,虎视已眈眈。
窗下书生时讽咏,筵前酒客日耽酣。
白草满郊,秋日牧征人之马;绿桑盈亩,春时供农妇之蚕。

将对欲,可对堪,德被对恩覃。
权衡对尺度,雪寺对云庵。
安邑枣,洞庭柑,不愧对无惭。
魏征能直谏,王衍善清谈。
紫梨摘去从山北,丹荔传来自海南。
攘鸡非君子所为,但当月一;养狙是山公之智,止用朝三。

中对外,北对南,贝母对宜男。
移山对浚井,谏苦对言甘。
千取百,二为三,魏尚对周堪。
海门翻夕浪,山市拥晴岚。
新缔直投公子纻,旧交犹脱馆人骖。
文达淹通,已咏冰兮寒过水;永和博雅,可知青者胜于蓝。

十四盐

悲对乐,爱对嫌,玉兔对银蟾。
醉侯对诗史,眼底对眉尖。
风飁飁,雨绵绵,李苦对瓜甜。
画堂施锦帐,酒市舞青帘。
横槊赋诗传孟德,引壶酌酒尚陶潜。
两曜迭明,日东生而月西出;五行式序,水下润而火上炎。

如对似,减对添,绣幕对朱帘。
探珠对献玉,鹭立对鱼潜。
玉屑饭,水晶盐,手剑对腰镰。
燕巢依邃阁,蛛网挂虚檐。
夺槊至三唐敬德,弈棋第一晋王恬。
南浦客归,湛湛春波千顷净;西楼人悄,弯弯夜月一钩纤。

逢对遇,仰对瞻,市井对闾阎。
投簪对结绶,握发对掀髯。
张绣幕,卷珠帘,石碏对江淹。
宵征方肃肃,夜饮已厌厌。
心褊小人长戚戚,礼多君子屡谦谦。
美刺殊文,备三百五篇诗咏;吉凶异画,变六十四卦爻占。

十五咸

清对浊,苦对咸,一启对三缄。
烟蓑对雨笠,月榜对风帆。
莺睍睆,燕呢喃,柳杞对松杉。
情深悲素扇,泪痛湿青衫。
汉室既能分四姓,周朝何用叛三监。
破的而探牛心,豪矜王济;竖竿以挂犊鼻,贫笑阮咸。

能对否,圣对贤,卫瓘对浑瑊。
雀罗对鱼网,翠巘对苍岩。
红罗帐,白布衫,笔格对书函。
蕊香蜂竞采,泥软燕争衔。
凶孽誓清闻祖逖,王家能乂有巫咸。
溪叟新居,渔舍清幽临水岸;山僧久隐,梵宫寂寞倚云岩。

冠对带,帽对衫,议鲠对言谗。
行舟对御马,俗弊对民碞。
鼠且硕,兔多毚,史册对书缄。
塞城闻奏角,江浦认归帆。
河水一源形弥弥,泰山万仞势岩岩。
郑为武公,赋缁衣而美德;周因巷伯,歌贝锦以伤谗。

声律启蒙-注音版-下卷.wps