Java中的正则表达式与递归编程技巧
1. 正则表达式在Java程序中的运用
1.1 管道符号的使用
管道符号(|)用于定义“或”操作,能创建接受两种或多种变体的模式。例如,验证机器人名称的模式可改进为:
Enter regex: (\w\d-\w\d)|(\w-\d\w\w)
Enter string: r2-d2
Match.
Enter string: c-3po
Match.
这里,| 表示左边或右边的组都可用于匹配字符串。左边的组匹配一个单词字符、一个数字、一个连字符、一个单词字符和另一个数字;右边的组匹配一个单词字符、一个连字符、一个数字和两个单词字符。
再如,允许用户输入带或不带括号的电话号码区号的正则表达式:
Enter regex: ((\d{3} )|(\(\d{3}\) ))?\d{3}-\d{4}
Enter string: (559) 555-1234
Match.
Enter string: 559 555-1234
Match.
Enter string: 555-1234
Match.
此模式的第一部分是由 | 分隔的两个小组组成的组,分别匹配不带括号和带括号的区号,整个组可选,随后是三位数字、一个连字符和四位数字。
1.2 Java处理正则表达式字符串的问题
Java在处理包含正则表达式的字符串时存在问题,因为Java将字符串字面量中的反斜杠字符视
超级会员免费看
订阅专栏 解锁全文
42

被折叠的 条评论
为什么被折叠?



