目录
索引 🔎︎

# REGEX

使用正则表达式匹配、提取或选择性地替换文本。

可使用此函数的最低 LibreOffice 版本为 6.2

### 语法

REGEX( 文本 ; 表达式 [ ; [ 替换] [ ; 标记|次数 ] ] )

「文本」: 要应用正则表达式的文本或对单元格的引用。

「表达式」: 表示正则表达式的文本, 使用「 ICU 正则表达式」愈发。如果没有匹配项, 并且未给出替换, 则返回 #N/A。

「替换」: 可选。替换文本以及对捕获组的引用。如果没有匹配项, 则「文本」将原样返回。

「标记」: 可选。「g」替换「文本」中「表达式」的所有匹配项, 而不是部分。如果没有匹配项, 文本将原样返回。

「次数」: 可选。数字，指定要提取或替换「文本」中「表达式」的匹配项的次数。如果没有匹配项, 并且未给出替换, 则返回 #N/A 。如果没有匹配项且给出了「替换, 则原样返回「文本」。如果次数」为 0, 则原样返回「文本」。

### 示例

「=REGEX("123456ABCDEF";"[:digit:]";"Z")」返回「Z23456ABCDEF」, 其中匹配到到第一个数字被替换为「Z」。

「=REGEX("123456ABCDEF";"[:digit:]";"Z";"g")」返回「ZZZZZZABCDEF」，其中所有数字都被替换为「Z」。

「=REGEX("123456ABCDEF";"[126]";"";"g")」返回「345ABCDEF」，其中出现的所有「1」「2」或「6」都被空字符串替换, 因此它们被删去。

「=REGEX("axbxcxd";".x";;2)」返回「bx」「.x」的第二次匹配。

「=REGEX("axbxcxd";"(.)x";"$1y";2)」返回「axbycxd」，其中「(.)x」的第二次匹配 (即「bx」) 被替换为单字符捕获组「即「b」」后跟「y」。

相关主题

正则表达式列表

ICU 正则表达式