推荐答案
测试一下
题目
3.1字符类的简写 ................................ ................................ ................................ ..........…
参考答案与知识点
参考答案
在正则表达式中,字符类简写提供了一种便捷方式来表示常见字符集合。常见的简写包括:
- \d:匹配任意数字,等价于[0-9]。
- \D:匹配任意非数字字符,等价于[^0-9]。
- \w:匹配任意单词字符,包括字母、数字和下划线,等价于[A-Za-z0-9_]。
- \W:匹配任意非单词字符,等价于[^A-Za-z0-9_]。
- \s:匹配任意空白字符,包括空格、制表符、换行符等,等价于[ \t\n\r\f\v]。
- \S:匹配任意非空白字符,等价于[^ \t\n\r\f\v]。
- \b:匹配单词边界,即单词字符与非单词字符之间的位置。
- \B:匹配非单词边界。
注意:大写简写表示对应小写的补集。易错点在于:\w通常包含下划线,但在某些实现中可能还包含Unicode字符;\d在非标准模式(如ECMAScript)可能匹配全角数字;\s在不同系统中换行符定义有差异。在SystemVerilog的字符串处理或断言中,这些简写可用于模式匹配,例如:`assert($pattern_match(user_input, "\\d{3}-\\d{4}"))`匹配电话号码。
涉及知识点
- 正则表达式字符类简写
- \d与\D的区别
- \w包含下划线
- \s包含的空白字符种类
- 大写简写表示补集
- SystemVerilog中模式匹配应用