查看“正则表达式 元字符 定位符”的源代码
←
正则表达式 元字符 定位符
跳到导航
跳到搜索
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看和复制此页面的源代码。
https://www.bilibili.com/video/BV1Eq4y1E79W?p=12 定位符,规定要匹配的字符串出现的位置,比如在字符串的开始还是在结束的位置 {| class="wikitable" !符号 !含义 !示例 !说明 !匹配输入 |- |^ |指定起始字符 |^[0-9]+[a-z]* |以至少1个数字开头,后接任意个小写字母的字符串 |123、6aa、555edf |- |$ |指定结束字符 |^[0-9]\\-[a-z]+$ |以1个数字开头后接连字符"-",并以至少1个小写字母结尾的字符串 |1-a |- |\\b |匹配目标字符串的边界 |han\\b |这里说的字符串边界指的是子串间有空格,或者是目标字符串的结束位置; 既可以是字符串的最后,也可是空格前面的子串 |hanshunping sp<u>han</u> nn<u>han</u> |- |\\B |匹配目标字符串的非边界 |han\\B |和\\b的含义刚刚相反 |<u>han</u>shunping sphan nnhan |} === 示例:在 "123abc" 中找 ^[0-9]+[a-z]* === <syntaxhighlight lang="java"> import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegExp06 { public static void main(String[] args) { String content = "123abc"; //以至少1个数字开头,后接任意个小写字母的字符串 String regStr = "^[0-9]+[a-z]*"; Pattern pattern = Pattern.compile(regStr); Matcher matcher = pattern.matcher(content); while (matcher.find()) { System.out.println("找到:" + matcher.group(0)); } } } </syntaxhighlight><syntaxhighlight lang="console"> 找到:123abc </syntaxhighlight>^[0-9]只匹配数字开头 === 示例:在 "a123abc" 中找 ^[0-9]+[a-z]* === <syntaxhighlight lang="java"> import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegExp06 { public static void main(String[] args) { String content = "a123abc"; //以至少1个数字开头,后接任意个小写字母的字符串 String regStr = "^[0-9]+[a-z]*"; Pattern pattern = Pattern.compile(regStr); Matcher matcher = pattern.matcher(content); while (matcher.find()) { System.out.println("找到:" + matcher.group(0)); } } } </syntaxhighlight>控制台没有输出,因为 content 不再是数字字符开头 === 示例:在 "123abc12" 中找 ^[0-9]+[a-z]* === <syntaxhighlight lang="java"> import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegExp06 { public static void main(String[] args) { String content = "123abc12"; //以至少1个数字开头,后接任意个小写字母的字符串 String regStr = "^[0-9]+[a-z]*"; Pattern pattern = Pattern.compile(regStr); Matcher matcher = pattern.matcher(content); while (matcher.find()) { System.out.println("找到:" + matcher.group(0)); } } } </syntaxhighlight><syntaxhighlight lang="console"> 找到:123abc </syntaxhighlight> === 示例:在 "123" 中找 ^[0-9]+[a-z]* === <syntaxhighlight lang="java"> import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegExp06 { public static void main(String[] args) { String content = "123"; //以至少1个数字开头,后接任意个小写字母的字符串 String regStr = "^[0-9]+[a-z]*"; Pattern pattern = Pattern.compile(regStr); Matcher matcher = pattern.matcher(content); while (matcher.find()) { System.out.println("找到:" + matcher.group(0)); } } } </syntaxhighlight><syntaxhighlight lang="console"> 找到:123 </syntaxhighlight> === 示例:在 "123abc12" 中找 ^[0-9]+[a-z]+$ === <syntaxhighlight lang="java"> import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegExp06 { public static void main(String[] args) { String content = "123abc12"; //以至少1个数字开头,必须以至少1个小写字母结束 String regStr = "^[0-9]+[a-z]+$"; Pattern pattern = Pattern.compile(regStr); Matcher matcher = pattern.matcher(content); while (matcher.find()) { System.out.println("找到:" + matcher.group(0)); } } } </syntaxhighlight>控制台什么也不输出,因为正则表达式要求 内容字符串必须以至少1个小写字母结束 === 示例:在 "123abc" 中找 ^[0-9]+[a-z]+$ === <syntaxhighlight lang="java"> import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegExp06 { public static void main(String[] args) { String content = "123abc"; //以至少1个数字开头,必须以至少1个小写字母结束 String regStr = "^[0-9]+[a-z]+$"; Pattern pattern = Pattern.compile(regStr); Matcher matcher = pattern.matcher(content); while (matcher.find()) { System.out.println("找到:" + matcher.group(0)); } } } </syntaxhighlight><syntaxhighlight lang="console"> 找到:123abc </syntaxhighlight> === 示例:在 "123" 中找 ^[0-9]+[a-z]+$ === <syntaxhighlight lang="java"> import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegExp06 { public static void main(String[] args) { String content = "123"; //以至少1个数字开头,必须以至少1个小写字母结束 String regStr = "^[0-9]+[a-z]+$"; Pattern pattern = Pattern.compile(regStr); Matcher matcher = pattern.matcher(content); while (matcher.find()) { System.out.println("找到:" + matcher.group(0)); } } } </syntaxhighlight>控制台什么也不输出,因为正则表达式要求 内容字符串必须以至少1个小写字母结束 === 示例:在 "123a" 中找 ^[0-9]+[a-z]+$ === <syntaxhighlight lang="java"> import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegExp06 { public static void main(String[] args) { String content = "123a"; //以至少1个数字开头,必须以至少1个小写字母结束 String regStr = "^[0-9]+[a-z]+$"; Pattern pattern = Pattern.compile(regStr); Matcher matcher = pattern.matcher(content); while (matcher.find()) { System.out.println("找到:" + matcher.group(0)); } } } </syntaxhighlight><syntaxhighlight lang="console"> 找到:123a </syntaxhighlight> === 示例:在 "123abc" 中找 ^[0-9]+\\-[a-z]+$ === <syntaxhighlight lang="java"> import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegExp06 { public static void main(String[] args) { String content = "123abc"; //以至少1个数字开头,必须以至少1个小写字母结束,同时中间有连字符(减)- String regStr = "^[0-9]+\\-[a-z]+$"; Pattern pattern = Pattern.compile(regStr); Matcher matcher = pattern.matcher(content); while (matcher.find()) { System.out.println("找到:" + matcher.group(0)); } } } </syntaxhighlight>控制台什么也不输出,因为正则表达式要求被匹配内容中间还要有连字符(减号)- === 示例:在 "123-abc" 中找 "^[0-9]+\\-[a-z]+$" === <syntaxhighlight lang="java"> import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegExp06 { public static void main(String[] args) { String content = "123-abc"; //以至少1个数字开头,必须以至少1个小写字母结束,同时中间有连字符(减)- String regStr = "^[0-9]+\\-[a-z]+$"; Pattern pattern = Pattern.compile(regStr); Matcher matcher = pattern.matcher(content); while (matcher.find()) { System.out.println("找到:" + matcher.group(0)); } } } </syntaxhighlight><syntaxhighlight lang="console"> 找到:123-abc </syntaxhighlight> === 示例:在 "hanshunping sphan nnhan" 中找 "han\\b" === <syntaxhighlight lang="java"> import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegExp06 { public static void main(String[] args) { String content = "hanshunping sphan nnhan"; //表示匹配边界的han String regStr = "han\\b"; Pattern pattern = Pattern.compile(regStr); Matcher matcher = pattern.matcher(content); while (matcher.find()) { System.out.println("找到:" + matcher.group(0)); } } } </syntaxhighlight><syntaxhighlight lang="console"> 找到:han 找到:han </syntaxhighlight> === 示例:在 "hanshunping sphan nnhanu" 中找 "han\\b" === <syntaxhighlight lang="java"> import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegExp06 { public static void main(String[] args) { String content = "hanshunping sphan nnhanu"; //表示匹配边界的han String regStr = "han\\b"; Pattern pattern = Pattern.compile(regStr); Matcher matcher = pattern.matcher(content); while (matcher.find()) { System.out.println("找到:" + matcher.group(0)); } } } </syntaxhighlight><syntaxhighlight lang="console"> 找到:han </syntaxhighlight> === 示例:在 "hanshunping sphan nnhan" 中找 "han\\B" === <syntaxhighlight lang="java"> import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegExp06 { public static void main(String[] args) { String content = "hanshunping sphan nnhan"; //和 \\b 的含义刚好相反 String regStr = "han\\B"; Pattern pattern = Pattern.compile(regStr); Matcher matcher = pattern.matcher(content); while (matcher.find()) { System.out.println("找到:" + matcher.group(0)); } } } </syntaxhighlight><syntaxhighlight lang="console"> 找到:han </syntaxhighlight>
返回至
正则表达式 元字符 定位符
。
导航菜单
个人工具
登录
名字空间
页面
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
导航
首页
Spring Boot 2 零基础入门
Spring Cloud
Spring Boot
设计模式之禅
VUE
Vuex
Maven
算法
技能树
Wireshark
IntelliJ IDEA
ElasticSearch
VirtualBox
软考
正则表达式
程序员精讲
软件设计师精讲
初级程序员 历年真题
C
SQL
Java
FFmpeg
Redis
Kafka
MySQL
Spring
Docker
JMeter
Apache
Linux
Windows
Git
ZooKeeper
设计模式
Python
MyBatis
软件
数学
PHP
IntelliJ IDEA
CS基础知识
网络
项目
未分类
MediaWiki
镜像
问题
健身
国债
英语
烹饪
常见术语
MediaWiki帮助
工具
链入页面
相关更改
特殊页面
页面信息