Clojure - 正则表达式


则表达式是一种用于查找文本中子字符串的模式。正则表达式在多种编程语言中都有使用,在LISP类型的编程语言中使用较多。

以下是正则表达式的示例。

//d+

上面的正则表达式用于查找字符串中再次出现的数字。// 字符用于确保字符“d”和“+”用于表示正则表达式。

一般来说,正则表达式遵循以下一组规则。

  • 有两个特殊位置字符用于表示行的开头和结尾:脱字号 (∧) 和美元符号 ($):

  • 正则表达式还可以包含量词。加号 (+) 表示一次或多次,应用于表达式的前一个元素。星号 (*) 用于表示零次或多次出现。问号 (?) 表示零次或一次。

  • 元字符 { 和 } 用于匹配前面字符的特定数量的实例。

  • 在正则表达式中,句点符号 (.) 可以代表任何字符。这被描述为通配符。

  • 正则表达式可以包括字符类。一组字符可以作为包含在元字符 [and] 中的简单字符序列给出,如 [aeiou] 中所示。对于字母或数字范围,您可以使用破折号分隔符,如 [a–z] 或 [a–mA–M]。字符类的补码由方括号内的前导插入符号表示,如 [∧a–z] 中,表示除指定字符之外的所有字符。

以下方法可用于正则表达式。

先生。 方法与说明
1 重新模式

返回 java.util.regex.Pattern 的实例。然后将其用于进一步的模式匹配方法中。

2 重新寻找

使用 java.util.regex.Matcher.find() 返回字符串与模式的下一个正则表达式匹配(如果有)

3 代替

替换函数用于将字符串中的子字符串替换为新的字符串值。子字符串的搜索是通过使用模式来完成的。

4 替换优先

替换函数用于将字符串中的子字符串替换为新的字符串值,但仅限于该子字符串第一次出现。子字符串的搜索是通过使用模式来完成的。