大数跨境

正则函数如何匹配$

正则函数如何匹配$ 浅谈出口账务和excel函数
2026-09-06
5
在正则表达式中,$ 是特殊符号,想要匹配它字面意思的“美元符号”时,不能直接用 $,因为正则引擎会把它当作“行尾”的锚点(即匹配字符串的结尾位置)。

因此,想匹配 $ 本身,需要加反斜杠转义写成 \$。

---

📝 具体用法对比

写法 含义 示例(匹配目标:"价格$100")
$\d+ 匹配行尾位置后的数字(几乎无结果) 返回错误或无匹配
\$\d+ 匹配美元符号后跟数字 结果:$100
\S+ 匹配非空白字符($属于可见符号) 结果:$100(整个连在一起)
\w+ 匹配单词字符($不是单词字符) 结果:100(跳过了$)

---

💡 为什么 \S 能匹配到 $?

因为 \S 的定义是“非空白字符”,而 $ 是可见符号,自然在它的匹配范围内。但如果你只想提取“字母+数字”,$ 就会被 \w 排除。

---

⚠️ 常见需要转义的特殊符号

在正则中,这些符号有特殊含义,匹配字面量时都要加 \:

. ^ $ * + ? { } [ ] ( ) | \

比如匹配手机号里的 +86,要写成 \+86。

---

如果你想提取“美元符号后面的金额数字”,可以这样写:

```excel
=REGEXP("价格$100", "(?<=\$)\d+")
// 结果:100(使用了正向后顾,只提取数字,不包含$)
`

【声明】内容源于网络
0
0
浅谈出口账务和excel函数
1234
内容 1330
粉丝 0
浅谈出口账务和excel函数 1234
总阅读19.3k
粉丝0
内容1.3k