差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录 前一修订版
后一修订版
前一修订版
manual:reference:package:extend:regex:main_page [2021/06/30 17:28] – [快速开始] rendmanual:reference:package:extend:regex:main_page [2021/07/03 10:20] (当前版本) – [快速开始] mikecovlee
行 8: 行 8:
   * [[:manual:reference:package:extend:regex:main_page#快速开始|快速开始]]   * [[:manual:reference:package:extend:regex:main_page#快速开始|快速开始]]
   * [[:manual:reference:package:extend:regex:main_page#Regex命名空间一览|Regex命名空间一览]]   * [[:manual:reference:package:extend:regex:main_page#Regex命名空间一览|Regex命名空间一览]]
-  * [[:manual:reference:package:extend:regex:main_page#正则表达式全集|()正则表达式全集]]+  * [[:manual:reference:package:extend:regex:main_page#(附)正则表达式全集|正则表达式全集]] 
  
 ----- -----
 \\ \\
 +
  
 ===== 下载方式 ===== ===== 下载方式 =====
 +
 ==== 通过 cspkg 下载 ==== ==== 通过 cspkg 下载 ====
-在 shell 中使用 **cspkg** 工具,并使用以下指令 
  
-下载 Regex 包 +<code bash>
-<code shell>+
 cspkg install regex cspkg install regex
 </code> </code>
行 26: 行 27:
  
 ===== 简介 ===== ===== 简介 =====
 +
 一个正则表达式通常被称为一个模式 (**pattern**),为用来描述或者匹配一系列符合某个句法规则的字符串。例如:''Handel''、''Händel'' 和 ''Haendel'' 这三个字符串,都可以由 ''H(a|ä|ae)ndel'' 这个模式来描述。大部分正则表达式的形式都有如下的结构: 一个正则表达式通常被称为一个模式 (**pattern**),为用来描述或者匹配一系列符合某个句法规则的字符串。例如:''Handel''、''Händel'' 和 ''Haendel'' 这三个字符串,都可以由 ''H(a|ä|ae)ndel'' 这个模式来描述。大部分正则表达式的形式都有如下的结构:
  
行 58: 行 60:
 ===== 快速开始 ===== ===== 快速开始 =====
  
-<code python>+<file csc regex_example_1.csc [enable_line_numbers="true"]>
 import regex import regex
 + 
 var match = regex.build("(\\w+)\\W+(\\w+)") var match = regex.build("(\\w+)\\W+(\\w+)")
 var source = "@abc def--" var source = "@abc def--"
-var res = regex.search(regex, source)  #获得匹配序列+var res = match.search(source) # 获得匹配序列 
 +  
 +foreach it in range(0, res.size()) do system.out.println(res.str(it)) 
 +</file>
  
-foreach it in range(0,res.size()) do system.out.println(res.str(it))+[[http://dev.covariant.cn/index.html?page=manual:reference:package:extend:regex:code_0|在线查看效果]]
  
-</code> +其中,''regex.build(str)'' 构建一个 ''regex'' 对象,可用于正则表达式匹配或搜索准确来说,正则匹配是基于 ''regex'' 对象进行分析操作是正则表达式操作的基础。
- +
-其中,''regex.build(str)'' 构建一个 ''regex'' 对象,可用于正则表达式匹配或搜索准确来说,''regex'' 对象更类似**范式**、**模板**的概念。 +
- +
-最基础的操作为构建 ''regex'' 对象匹配操作以及替换操作,分别如下所示:+
  
 +最基础的操作为构建 **regex** 对象,匹配操作以及替换操作,分别如下所示:
 ^方法  ^描述  ^ ^方法  ^描述  ^
-|[regex] build(string)  |构建一个正则表达式 +|[regex] **build**(string)  |构建一个正则表达式 
-|[result] match([regex], string)  |匹配正则表达式到整个字符序列 +|[result] **match**([regex], string)  |匹配正则表达式到整个字符序列 
-|[result] search([regex], string)  |匹配正则表达式到字符序列的任何部分 +|[result] **search**([regex], string)  |匹配正则表达式到字符序列的任何部分 
-|string replace([regex], string str, string fmt)  |以格式化的替换文本来替换正则表达式匹配的出现位置  |+|string **replace**([regex], string str, string fmt)  |以格式化的替换文本来替换正则表达式匹配的出现位置  |
  
 ----- -----
 \\ \\
  
-==== Regex 命名空间一览 ====+===== Regex命名空间一览 =====
  
-   命名空间    描述    +^命名空间  ^描述  
-   [[:manual:reference:package:extend:regex:result:main_page|result]]    |    正则匹配结果名称空间    |+|''result''  |[[:manual:reference:package:extend:regex:result:main_page|正则匹配结果名称空间]]  |
  
 ----- -----
 \\ \\
  
-==== 正则表达式全集 ====+===== (附)正则表达式全集 =====
  
 ^字符  ^描述  ^ ^字符  ^描述  ^
行 135: 行 137:
 |\nml  |<nowiki>如果n为八进制数字(0-3),且m和l均为八进制数字(0-7),则匹配八进制转义值nml。</nowiki>  | |\nml  |<nowiki>如果n为八进制数字(0-3),且m和l均为八进制数字(0-7),则匹配八进制转义值nml。</nowiki>  |
 |\un  |<nowiki>匹配n,其中n是一个用四个十六进制数字表示的Unicode字符。例如,\u00A9匹配版权符号(©)。</nowiki>  | |\un  |<nowiki>匹配n,其中n是一个用四个十六进制数字表示的Unicode字符。例如,\u00A9匹配版权符号(©)。</nowiki>  |
- 
- 
-