Java正则表达式中$符号的具体用法及其在字符串匹配中的关键作用是什么?
- 后端开发
- 2025-10-14
- 4
在Java中,正则表达式是一个强大的工具,用于处理字符串匹配、查找和替换等操作,符号“$”在正则表达式中扮演着重要的角色,本文将详细介绍在Java正则表达式中如何使用“$”符号。

$符号的含义
在正则表达式中,“$”符号通常有以下几种含义:
| 位置 | 含义 |
|---|---|
| 行尾 | 表示匹配字符串的末尾 |
| 定位符 | 用于定义一个特定的位置,如单词边界 |
$符号的使用方法
下面列举一些常见的使用场景和示例:

| 场景 | 示例 | 说明 |
|---|---|---|
| 匹配字符串末尾 | hello$ | 匹配以“hello”结尾的字符串 |
| 替换字符串末尾 | String s = "hello world";<br>String newS = s.replaceAll("world$", "Java"); | 将字符串“hello world”中的“world”替换为“Java” |
| 检查字符串是否以特定字符结尾 | String s = "hello";<br>boolean isEndWith = s.endsWith("$"); | 判断字符串“hello”是否以“$”结尾 |
| 匹配单词边界 | bhellob | 匹配单词“hello”周围的位置 |
示例代码
以下是一个简单的示例,展示如何使用“$”符号:
import java.util.regex.Matcher; import java.util.regex.Pattern; public class Main { public static void main(String[] args) { // 匹配字符串末尾 String regex = "hello$"; String text = "hello world"; Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher(text); if (matcher.find()) { System.out.println("匹配成功:" + matcher.group()); } // 替换字符串末尾 String newS = text.replaceAll("world$", "Java"); System.out.println("替换结果:" + newS); // 检查字符串是否以特定字符结尾 String s = "hello"; boolean isEndWith = s.endsWith("$"); System.out.println("字符串是否以$" + isEndWith); } }
FAQs
问题1:$符号是否可以与其他符号组合使用?
解答:是的,$符号可以与其他符号组合使用。b$可以表示单词边界和行尾。
问题2:在正则表达式中,$符号有什么特殊的作用?
解答:在正则表达式中,$符号的主要作用是匹配字符串的末尾或定义特定的位置,当它作为锚点时,可以用于匹配行尾。
